在GetListForAutocomplete中无法识别db变量

时间:2014-08-20 13:16:05

标签: jquery asp.net-mvc autocomplete codeplex

我正在关注教程:

http://www.codeproject.com/Articles/762959/jQuery-UI-Autocomplete-in-MVC-Selecting-Nested-Ent

我屏蔽了代码

public JsonResult GetListForAutocomplete(string term)
{               
    Person[] matching = string.IsNullOrWhiteSpace(term) ?
    db.Persons.ToArray() :
    db.Persons.Where(p => p.LastName.ToUpper().StartsWith(term.ToUpper())).ToArray();

return Json(matching.Select(m => new
{
     id = m.Id, 
     value = m.LastName, label = m.ToString() 
}), JsonRequestBehavior.AllowGet);
}

我对未声明的db变量有错误。但我不知道如何申报。该教程没有提到它。

1 个答案:

答案 0 :(得分:0)

看起来db应该是dbcontext变量。您只需声明它并在控制器顶部实例化它。然后,您可以在您需要的控制器的任何方法/操作中使用它。 dbcontext基本上只是设置数据库的链接。

我认为这有点令人困惑,因为作者从来没有提到他的解决方案背后有一个数据库,但它看起来有。

所以它看起来像这样:

public class TestController : Controller
{

    private MyProjectEntities db = new MyProjectEntities();