C# 在T?的通用列表上使用linq select方法?

C# 在T?的通用列表上使用linq select方法?,c#,.net,linq,C#,.net,Linq,如何在T的泛型列表上获得一个工作的linq select方法 此代码未编译,出现以下错误: 错误1“TestInsertXMLvsTVP.TVP.TVPDataCollection” 不包含“选择”的定义,并且没有扩展方法 “选择”接受类型为的第一个参数 'TestInsertXMLvsTVP.TVP.TVPDataCollection' 无法找到(是否缺少using指令或程序集 参考?)D:\Documenti\Visual Studio 2012\Projects\TestInsertXML

如何在T的泛型列表上获得一个工作的linq select方法

此代码未编译,出现以下错误:

错误1“TestInsertXMLvsTVP.TVP.TVPDataCollection” 不包含“选择”的定义,并且没有扩展方法 “选择”接受类型为的第一个参数 'TestInsertXMLvsTVP.TVP.TVPDataCollection' 无法找到(是否缺少using指令或程序集 参考?)D:\Documenti\Visual Studio 2012\Projects\TestInsertXMLvsTVP\TestInsertXMLvsTVP\TestInsertXMLvsTVP\frmTest.cs 134 26 TestInsertXMLvsTVP

public类TVPDataCollection:List,IEnumerable其中T:class,new()
{
IEnumerator IEnumerable.GetEnumerator()
{
列表记录=新列表();
var properties=typeof(T).GetProperties();
foreach(属性中的var属性)
{
SqlType oSqlType=GetSqlType(prop);
if(oSqlType.UseSize)
添加(新的SqlMetaData(prop.Name,oSqlType.SqlDbType,oSqlType.Size));
其他的
Add(新的SqlMetaData(prop.Name,oSqlType.SqlDbType));
}
SqlDataRecord oSqlDataRecord=新的SqlDataRecord(records.ToArray());
foreach(本文件中的T数据)
{
for(int i=0;i0)
oReturn.Size=lenAttributes[0].Len;
其他的
oReturn.Size=SqlMetaData.Max;
oReturn.UseSize=true;
}
其他的
抛出新的ApplicationException(string.Format(“Tipo非trovato属性名称:{0}类型:{1}”,Prop.Name,Type));
//请参阅以下文档以添加其他类型
// http://msdn.microsoft.com/en-us/library/ms131092.aspx
返回或返回;
}
}
公共类文档列表
{
public int IdDocumento{get;set;}
}
无效测试()
{
TVPDataCollection列表=新TVPDataCollection();;
字符串[]s=list.Select(x=>x.IdDocumento.ToString()).ToArray();
}

您需要在代码顶部添加以下代码:

using System.Linq;

您需要在代码顶部添加以下代码:

using System.Linq;

您需要在代码顶部添加以下代码:

using System.Linq;

您需要在代码顶部添加以下代码:

using System.Linq;

我不知道为什么,但这很好:

string[] s = list.Select<DocList,string>(x => x.IdDocumento.ToString()).ToArray(); 
string[]s=list.Select(x=>x.IdDocumento.ToString()).ToArray();

我不知道为什么,但这很好:

string[] s = list.Select<DocList,string>(x => x.IdDocumento.ToString()).ToArray(); 
string[]s=list.Select(x=>x.IdDocumento.ToString()).ToArray();

我不知道为什么,但这很好:

string[] s = list.Select<DocList,string>(x => x.IdDocumento.ToString()).ToArray(); 
string[]s=list.Select(x=>x.IdDocumento.ToString()).ToArray();

我不知道为什么,但这很好:

string[] s = list.Select<DocList,string>(x => x.IdDocumento.ToString()).ToArray(); 
string[]s=list.Select(x=>x.IdDocumento.ToString()).ToArray();

添加使用系统。Linqit不工作,需要使用添加使用系统。Linqit不工作,需要使用添加使用系统。Linqit不工作,需要使用添加使用系统。Linqit不工作,需要使用添加使用系统。Linqit不工作,需要使用