2012-04-28 11 views
0

データテーブルを(Tの)リストに変換する方法を検索します。 .NET 3.5vb.net(Tの)リストにデータテーブル3.5

上Vb.netで

あなたはどのようにそれをやった誰かのリンクにまたは多分知っている場合。

タンクあなた


私は(別のスタック質問から)C#の

public static IEnumerable<T> ToEnumerable<T>(DataTable dt, Func<DataRow, T> translator) 
{ 
    foreach(DataRow dr in dt.Rows) 
    { 
     yield return translator(dr); 
    } 
} 

でこれを確認するが、私は.NET 3.5でのFuncを翻訳カント(私はdidntのそれを行う方法を発見しました。または

C:\プログラム良いLIB)

+0

[ 'DataTableExtensions.AsEnumerable'方法](http://msdn.microsoft.com/en-us/library/system.data.datatableextensions.asenumerable%28v=vs.90%29.aspx ) –

答えて

0

は、次のアセンブリへの参照を追加する必要がありますFiles \ Reference Assemblies \ Microsoft \ Framework \ v3.5 \ System.Data.DataSetExtensions.dll

そうしないと、AsEnumerable()メソッドを呼び出すことができません。

ティムSchmelterは、追加のヒントを書いた:

あなたはSystem.Data.DataSetExtensions.dllへの参照を追加する必要があります。 VB.NETでは明示的に呼び出す必要はありません(Dim rows =(From dtの行から).ToList)。

ベリー

+0

ええ、すでに見て、働いているようです。 (または少なくともコンパイルする)。私はこの投稿の2番目のコードの翻訳を期待していた:リスト drlist = dt.AsEnumerable()。ToList(); //私はできません.AsEnumerable、datatable doesntはこのプロパティを持っています。 – forX

+0

ああ、私は彼らがいると思いました。 http://msdn.microsoft.com/de-de/library/system.data.datatableextensions.asenumerable.aspx – Baerree

+0

多分あなたはその参照が必要です:http://mitzen.blogspot.de/2009/06/datatable-does- not-have-asenumerable.html – Baerree

関連する問題