Asp.net Mvc action返回多个模型实体给view

Posted 一夜秋2014

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Asp.net Mvc action返回多个模型实体给view相关的知识,希望对你有一定的参考价值。

1、controller中action代码:

public class HomeController : Controller
    {
        public ActionResult Detail(int id)
        {
            UserInfo master = masterBLL.QueryOne(x => x.StudentID == id);//主表
            UserSlave slave = slaveBLL.QueryOne(x => x.StudentID == id);//从表
            return View(Tuple.Create(master, slave));
        }
    }

Tuple是c#4.0的新特性。

如果返回三个,则 Tuple.Create(master, slave1 , slave2)

 

2、view代码:

@{
    Layout = null;
}
@model Tuple<Model.UserInfo, Model.UserSlave>
<!DOCTYPE html>
<html>
<head>
    <title></title>
    <meta name=viewport content=width=device-width,initial-scale=1.0>
</head>
<body>
    <table>
        <tr>
            <td><span>姓名</span></td>
            <td>
                @Html.DisplayFor(model => model.Item1.Name)
            </td>
        </tr>
        <tr>
            <td><span>邮箱</span></td>
            <td>
                @Html.DisplayFor(model => model.Item2.Email)
            </td>
        </tr>
    </table>
</body>
</html>

model.Item1表示实体模型UserInfo,model.Item2表示实体模型UserSlave

如果是textbox控件,写法一样:

@Html.TextBoxFor(model => model.Item1.Name, new { placeholder = "姓名", maxlength = "20" })

 

以上是关于Asp.net Mvc action返回多个模型实体给view的主要内容,如果未能解决你的问题,请参考以下文章

ASP.NET MVC 4 模型绑定

asp.net mvc5 action多个参数

Asp.net mvc 使用Ajax调用Action 返回数据。

asp.net mvc 使用Ajax调用Action 返回数据

asp.net mvc 使用Ajax调用Action 返回数据

ASP.NET MVC 4 Web API