Asp.net 如何根据ID列出模型?

Asp.net 如何根据ID列出模型?,asp.net,asp.net-mvc,Asp.net,Asp.net Mvc,我无法让我的控制器根据用户Id列出承包商模型。我需要它显示用户创建的承包商 有人能告诉我遗漏了什么以便正确列出吗 我在电话里听到一个错误 Return View(Contractors) 说它在当前上下文中不存在,所以我不知道如何将模型传递到视图中 到目前为止,我得到的是: // GET: Admin/Shop/Products public ActionResult MyContractors(int? catId) { using (Db db = new Db())

我无法让我的控制器根据用户Id列出承包商模型。我需要它显示用户创建的承包商

有人能告诉我遗漏了什么以便正确列出吗

我在电话里听到一个错误

  Return View(Contractors)
说它在当前上下文中不存在,所以我不知道如何将模型传递到视图中

到目前为止,我得到的是:

// GET: Admin/Shop/Products
public ActionResult MyContractors(int? catId)
{
        using (Db db = new Db())
        {
            UserDTO user = db.Users.Where(x => x.Username == User.Identity.Name).FirstOrDefault();
            int userId = user.UserId;

            // Declare a list of ProductVM
            List<ContractorVM> Contractors = db.Contractors.Where(x => x.UserId == userId).ToArray().Select(x => new ContractorVM(x)).ToList();

            // Populate categories select list
            ViewBag.ContractorCategories = new SelectList(db.ContractorCategories.ToList(), "ContractorCategoryId", "ContractorCategoryName");

            // Set selected category
            ViewBag.SelectedCat = catId.ToString();
        }

        // Return view with list
        return View(Contractors);
}
//获取:Admin/Shop/Products
公共行动结果承包商(int?catId)
{
使用(Db=new Db())
{
UserDTO user=db.Users.Where(x=>x.Username==user.Identity.Name).FirstOrDefault();
int userId=user.userId;
//声明ProductVM的列表
列出contactors=db.contactors.Where(x=>x.UserId==UserId).ToArray().Select(x=>newcontactorvm(x)).ToList();
//填充类别选择列表
ViewBag.ContractorCategories=new SelectList(db.ContractorCategories.ToList(),“ContractorCategoryId”,“ContractorCategoryName”);
//设置所选类别
ViewBag.SelectedCat=catId.ToString();
}
//返回带有列表的视图
返回视图(承包商);
}

您已经使用(Db Db=new Db())在
内部创建了
承包商。除此之外,没有任何东西知道它的存在,这就是为什么它说它不在当前上下文中

在外部声明如下:

List<ContractorVM> Contractors = new List<ContractorVM>()
它应该会起作用

Contractors = db.Contractors.Where(x => x.UserId == userId).ToArray().Select(x => new ContractorVM(x)).ToList();