2009-09-04 15 views
0

私はLINQを使ってDataSetを使用していますが、ちょっと面白いことに、LINQ2SQLを使用してこれらのDataTablesを埋めています。私は最近、1GB未満のRAM、マシンメモリ1秒または2秒が過ぎて凍りついていて、それが正常になります。何がクライアントにとっても欲求不満です。LINQで作業するデータセット

...だから、TableAdaptersを使用する代わりにLINQ2SQLを使用してDataTablesを埋め込む方法は?このサンプルで

おかげ

答えて

1

私は、データテーブルを構築し、私は、LINQ to SQLはSQLを使用してから照会された名前のオブジェクトのリストを持っています。各フィールドからオブジェクト配列を構築する名前オブジェクトのリストをループします。その配列をデータテーブルに追加します。メモリが問題であれば、私はデータテーブルの使用を避けます。そのデータテーブルは、一般的に汎用リストよりも多くのメモリを使用します。

public void LoadStandardizedNames(List<StandardName> names) 
    { 
     using (DataTable table = CreateNamesTable()) 
     { 
      names.ForEach(name => table.LoadDataRow(new object[] 
      { 
       name.BatchId, 
       name.FirstName, 
       name.MiddleName, 
       name.LastName, 
       name.NameSuffix, 
       name.Gender, 
       name.ChangeCode, 
      }, true)); 
     } 
    } 
+0

ありがとう、これは私がTableAdaptersを使用して停止を探していた –

関連する問題