使用System.Linq.Dynamic.Core将结果强制转换为自定义类
我试图将结果类型转换为自定义类,但遇到异常: System.InvalidCastException:'无法强制转换类型为的对象 “f__AnonymousType0`2[System.Int32,System.Int32]”以键入“MyClass” 我的代码是:使用System.Linq.Dynamic.Core将结果强制转换为自定义类,linq,dynamic-linq,Linq,Dynamic Linq,我试图将结果类型转换为自定义类,但遇到异常: System.InvalidCastException:'无法强制转换类型为的对象 “f__AnonymousType0`2[System.Int32,System.Int32]”以键入“MyClass” 我的代码是: class MyClass { public int LangId { get; set; } public int GroupId { get; set; } } var fields = "new(LangId
class MyClass
{
public int LangId { get; set; }
public int GroupId { get; set; }
}
var fields = "new(LangId AS LangId,TranslateId AS GroupId)";
context.Table.Select(fields).ToDynamicListAsync<MyClass>();
class-MyClass
{
public int LangId{get;set;}
public int GroupId{get;set;}
}
var fields=“新建(LangId作为LangId,TranslateId作为GroupId)”;
context.Table.Select(fields.ToDynamicListAsync();
我是否错误地理解了泛型方法ToDynamicListAsync
应该做什么,或者我在其他地方的代码中出现了另一个错误
我可以这样做吗?(typecast
dynamic[]
result tocustom_object[]
?)我试图用反射做一些奇怪的事情,然后我偶然发现了解决方案:
var rows = await context.Table.Select(typeof(MyClass), fields).ToDynamicListAsync<MyClass>();
var rows=wait context.Table.Select(typeof(MyClass),fields.ToDynamicListAsync();
希望它能帮助其他人。我想您也可以使用此代码
var rows = await context.Table.Select<MyClass>(fields).ToDynamicListAsync<MyClass>();
var rows=wait context.Table.Select(fields.ToDynamicListAsync();
此扩展方法也在中定义