可能重复:
What’s the return type of an anonymous class如何将匿名类型作为参数传递给方法?
我创建一个匿名类型与像以下查询:
来电代码:
var query= from p in _db.ExecuteDataSet(SQL).Tables[0].AsEnumerable()
select new {
ProductCode = p.Field<string>("PRODUCT_CODE"),
ProductName = p.Field<string>("PRODUCT_NAME")
};
foreach(var product in query)
{
WriteProduct(product);
}
方法类似于:
void WriteProduct(object prod)
{
// access the product
}
我无法获得WriteProduct
方法的正确参数类型。请帮帮我。
匿名类型几乎是他们所称的:它们没有名称。如果它没有名称,则不能引用它。如果你想能够引用它,请将它设置为完整的类或结构体。 – zneak
@zneak:匿名类型具有在编译时已知的类型名称。你可以像这样得到它:product.GetType()。FullName。这对OP没有帮助,但您的评论并不完全正确。 –
@Eric J.我纠正了。 – zneak