InvalidOperationException:输入从作用域''引用的'System.String',但它未定义

C. *_*oga 5 c# linq entity-framework-core asp.net-core-mvc asp.net-core

我升级到Core 1.1和Visual Studio 2017.我正在运行一个简单的现有代码行来搜索用户输入字符串的列,但得到错误...

InvalidOperationException:从范围''引用的'System.String'类型的变量'__searchTerm_1',但它未定义

简而言之,我的守则是:

public IQueryable<SearchViewModel> ActivitySearch(string searchTerm)
{
    var qry = (from act in context.Acts
                  .Include(x => x.ActivityExt)
               select new SearchViewModel()
               {
                   AMCNnumber = act.AMCNnumber
                   ActivityId = act.ActivityID,
                   ImplementingPartner = act.ActivityExt.imp,
                   ProjectTitle = act.Name,
                   Description = act.Description,
                   StartDate = act.StartDate,
                   EndDate = act.EndDate
               });

     if (!String.IsNullOrEmpty(searchTerm))
     {
         qry = qry.Where(x => x.AMCNnumber.Contains(searchTerm);
     } 

     return qry.ToArray();
}
Run Code Online (Sandbox Code Playgroud)

C. *_*oga 0

事实证明,我的子查询导致了错误。我必须创建单独的变量才能获取 ID。