如何在mvc4中的一个视图中发送我的两个模型?

时间:2014-10-15 10:18:12

标签: asp.net-mvc-4

ManageDatabase db = new ManageDatabase();

    //
    // GET: /Addcart/

    public ActionResult Index()
    {
        List<UserProfile> Userdetails = db.UserProfiles.Where(m => m.UserName == User.Identity.Name).ToList();

        var _product = from ord in db.Orders
                       where ord.UserId == Userdetails[0].UserId
                       select ord;



        return View(_product);
    }

我有两个模型userprofile和orders.I想要检索订单表,其中Orders UserId = Logged UserId ..但它告诉两个模型不允许1个视图....请告诉我解决方案或告诉我替代方法。

1 个答案:

答案 0 :(得分:0)

创建一个ViewModel类:

public class UserOrdersVM
{
List<UserProfile> UserDetails {get;set;}
List<Order> Orders {get;set;}
}

并在行动中:

public ActionResult Index()
{
  List<UserProfile> Userdetails = db.UserProfiles.Where(m => m.UserName == User.Identity.Name).ToList();

  var _product = (from ord in db.Orders
                  where ord.UserId == Userdetails[0].UserId
                  select ord).ToList();

 UserOrdersVM vm = new UserOrdersVM() { 
                                         UserDetails =Userdetails ,
                                         Orders = _product  
                                        }

 return View(vm);
}

并在视野中:

@model UserOrdersVM