C# 将VBNet LiNQ转换为C
如何将其转换为C代码C# 将VBNet LiNQ转换为C,c#,linq,C#,Linq,如何将其转换为C代码 Dim newArray() as String = From sRow In iDatatable.Rows.Cast(Of DataRow)() Where sRow("iType").ToString = "ST" Select CStr(sRow("iResult"))).ToArray() 我尝试过这个网站,但没有一个有效 http://www.developerfusion.com/tools/convert/csharp-to-vb/ http://www.
Dim newArray() as String = From sRow In iDatatable.Rows.Cast(Of DataRow)() Where sRow("iType").ToString = "ST" Select CStr(sRow("iResult"))).ToArray()
我尝试过这个网站,但没有一个有效
http://www.developerfusion.com/tools/convert/csharp-to-vb/
http://www.carlosag.net/Tools/CodeTranslator/
我认为这相当于:
string[] newArray = iDatatable.Rows.Cast<DataRow>()
.Where(sRow => sRow["iType"].ToString() == "ST")
.Select(sRow => sRow["iResult"].ToString())
.ToArray();
完全一样,只是有点不同
string[] newArray = (from sRow in iDatatable.Rows.Cast<DataRow>() where sRow["iType"].ToString() == "ST" select (string)sRow["iResult"]).ToArray();
确保在名称空间之前有这个
using System.Linq;
然后使用
string[] newArray = iDatatable.Rows.Cast<DataRow>()
.Where(sRow => sRow["iType"].ToString() == "ST")
.Select(sRow => sRow["iResult"].ToString())
.ToArray();
我是一个VB爱好者,正在慢慢地迁移到C。当我使用您的代码时,出现了一个错误,错误是“System.Data.DataRowCollection”不包含“Cast”的定义和最佳扩展方法重载“System.Data.EnumerablerRowCollectionExtensions.CastSystem.Data.Enumera”bleRowCollection“”具有一些无效参数