我正在将我的应用代码从 .Net5 MVC / JQuery ASPNETZERO模板移动到新的 .Net核心1.1 MVC / JQuery模板即可。 到目前为止,我已经复制了我的前几个自定义实体。创建了EF迁移并将更改应用于我的数据库。 然后我开始为我的一个实体构建第一个应用服务。我正在复制我现有的MVC模板中的代码,该模板没有任何问题。
public async Task<PagedResultDto<ListValuesListDto>> GetListValues(GetListValuesInput input)
{
var query = from lv in _listvaluesRepository2.GetAll()
select new ListValuesListDto
{
Id = lv.Id,
ListName = lv.ListName,
ListText = lv.ListText
};
query = query.WhereIf(!input.Filter.IsNullOrWhiteSpace(), lv => lv.ListName.Contains(input.Filter) || lv.ListText.Contains(input.Filter));
var resultCount = await query.CountAsync();
var results = await query.OrderBy(input.Sorting).PageBy(input).ToListAsync();
return new PagedResultDto<ListValuesListDto>(resultCount, results);
}
上面的方法来自我的MVC模板。当我将它放入.Net核心解决方案时,我不断收到以下构建错误。
CS0411无法从用法中推断出方法'Enumerable.OrderBy(IEnumerable,Func)'的类型参数。尝试明确指定类型参数
错误指向此行代码中的“OrderBy”:
var results = await query.OrderBy(input.Sorting).PageBy(input).ToListAsync();
我还在学习ABP模板和EF。我不能为我的生活弄清楚为什么.Net核心模板中的相同代码不起作用?
任何人都可以提供的帮助将非常感谢!
答案 0 :(得分:4)
我刚刚解决了自己的问题。我必须为System.Linq.Dynamic.Core
希望它可以帮助别人! : - )