2012-02-28 6 views
0

私は他のコードをオンラインでチェックしましたが、linq-to-sqlデータコンテキストを更新するためのrefresh()メソッドのパラメータを理解できません。LINQからSQLへのDataContextをリフレッシュするRefresh()メソッドを理解できません。

テーブルAのデータを削除できるようにテーブルBのデータを削除しています。次に、必要なレコードが削除されたテーブルBのデータが表示されるようにGridviewを更新します。

public static void DeleteCategory(int id) 
    { 
     var result = from a in adb.Artifacts     //adb is my data context visible to every code. 
        where a.CatgId == id 
        select new { artid = a.ArtId}; 

     var count = result.Count(); 
     int counter = 0; 




      if (count > 0) 
      { 
       foreach (var r in result) 
       { 

        MyArtifact.DeleteByKey(r.artid); 
        count--; 
        counter = 1; 
       } 
      } 
      if (counter==0) 
      { 
       MyCategories.DeleteByKey(id);   
      } 

//私はここでリフレッシュ()メソッドを使用する必要がありますが、私はパラメータRefreshModeとエンティティを理解することはできませんよ!これらの2つを私に説明してもらえますか? }

私はあなたがリフレッシュを使用するのではなく、削除方法を変更する必要があると思ういけないあなたに

+0

http://blogs.msdn.com/b/dinesh.kulkarni/archive/2008/05/23成果物を削除しますエンティティマッピングカスケードの設定を変更するであろう/binq-to-sql-tips-6-how-to-refresh-given-datacontext-won-t-stomp-on-objects.aspx –

+0

こんにちは、 私はそのブログをチェックしました!しかし、アプリケーションのrefresh()のパラメータに何を使用すべきかを特定できません。エンティティとリフレッシュモードが表示されます。 ありがとうございました –

+0

私はadb.Refresh(RefreshMode.OverwriteCurrentValues、Artifact)を書こうとしました。しかし、これを行うと、エラーが発生します。 'AdlibCoreModel.Artifact'は 'タイプ'ですが、 '変数'のように使用されます。 –

答えて

0

ありがとうございます。コンテキストを使用して削除する場合は、再設定する必要はありません。

私はあなたがカテゴリを削除すると、それは自動的に

+0

Hey Andy、 LINQを使用してDeleteOnSubmit()を使用して削除しています...マッピングカスケード私はリフレッシュ()を知りたいのですが、私は将来更新または挿入する際に使用しています... –

+0

リフレッシュを含めるようにコードを更新できますか? –

+0

えええええええええええええええと、私はそれのための2番目のパラメータを取得していない....私は私の上のコメントを読むことができます私にエラーを示して... –

関連する問題