Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 控制器Where语句上的Not invocable模型变量_C#_Html_Asp.net Mvc_Razor_Filter - Fatal编程技术网

C# 控制器Where语句上的Not invocable模型变量

C# 控制器Where语句上的Not invocable模型变量,c#,html,asp.net-mvc,razor,filter,C#,Html,Asp.net Mvc,Razor,Filter,我有一个非常愚蠢的问题,但我找不到自己知道为什么VisualStudio会给我这个错误 我在视图中创建了一个过滤器文本框,并将该字符串传递给我的控制器,以使用我的一个模型字符串生成where语句,我在模型字符串上得到一个错误,表示它不可调用。。 这是textbox的“我的视图”部分 @使用(Html.BeginForm()) { Filtro描述:@Html.TextBox(“SearchString”) }您是否试图将Description与搜索字符串进行比较?你想要完美搭配的吗?如果

我有一个非常愚蠢的问题,但我找不到自己知道为什么VisualStudio会给我这个错误

我在视图中创建了一个过滤器文本框,并将该字符串传递给我的控制器,以使用我的一个模型字符串生成where语句,我在模型字符串上得到一个错误,表示它不可调用。。 这是textbox的“我的视图”部分

@使用(Html.BeginForm())
{ 

Filtro描述:@Html.TextBox(“SearchString”)


}
您是否试图将Description与搜索字符串进行比较?你想要完美搭配的吗?如果是,请使用.Equals()。如果您想让它在Description中搜索任何“包含”该文本的内容,请使用.Contains。如果希望不区分类型,则在Where中的两个值上都使用.ToLower

public ActionResult Index(string searchString = "")
    { 
        var db = new ArponClientPosContext();            
        var lowerSearch = searchString.ToLower();
        var students = from s in db.Pos
                   where s.Descripcion.ToLower().Contains(lowerSearch)
                   select s;
        return View("~/Views/HomePos/Index.cshtml", students.ToList());

    }

我过去经常解决这个问题

不是一个完美的匹配,我想让它像如果搜索字符串是“Caf”,它将显示以Caf…等开头的where statemt中的每个项目,但它会在“description”处给我invocable对象错误在我的where语句中,如果我使用equals,它会给e一个错误,说我不能转换我的整个句子,我已经转换了sentence@ArturoMartinez我假设db.Pos属于List类型。如果它是Pos类型,那么你不能这样做。我像一个数据库集,我只是编辑,所以我的上下文上传@thinklarge@ArturoMartinez我更改了答案,删除了where子句,因为您可以从上面的select语句中获得它。我有一个你在DotFiddle上的应用程序的人为例子是的,但是如果我在“description”后面添加一个语句,比如.equals或contains,我会在整个状态上得到一个错误,它说:“我不能转换一个类型System.Linq.iquery,已经有一个显式转换了”@ArturoMartinez你能把你的ArponClientPoContext代码包括进来吗?当然@thinklarge让我加上它