【问题标题】:how to use a dropdown list in the mvc that is using the data from another table?如何在使用另一个表中的数据的 mvc 中使用下拉列表?
【发布时间】:2014-03-12 17:12:23
【问题描述】:
<li> @Html.LabelFor(m => m.EmployeeCode)
    @Html.TextBoxFor(m => m.EmployeeCode)
    @Html.ValidationMessageFor(model => model.EmployeeCode)

</li>
<li>
    @Html.LabelFor(m => m.WorkPhone)
    @Html.TextBoxFor(m => m.WorkPhone, new { @placeholder = "WorkPhone" })
    @Html.ValidationMessageFor(model => model.WorkPhone)
</li>
<li>
    @Html.LabelFor(m   => m.BillingRate)
    @Html.TextBoxFor(m => m.BillingRate)
    @Html.ValidationMessageFor(model => model.BillingRate)
</li>
<li>`enter code here`
    @Html.LabelFor(m => m.FunctionId)
    @Html.EditorFor(m => m.FunctionId)
    @Html.ValidationMessageFor(model => model.FunctionId)
</li>
//Here I need the function Id to return values from another model and it sould be as a dropdown !!

【问题讨论】:

    标签: c# html model-view-controller


    【解决方案1】:

    您必须以某种方式将另一个表传递给视图。在编程方面更准确地说,我们不是在讨论表,而是在讨论对象。

    您在代码中使用的“模型”本质上是一个对象,而不是一个表格。

    基本上有两种方法可以将不同的对象传递给视图。

    第一:

    在控制器的操作中添加一行:

    ViewBag.AnotherObject = YourObject;
    

    比在视图中你可以像这样访问它:

    @ViewBag.AnotherObject
    

    第二:

    而不是调用

    return View(yourModel);
    

    您可以致电:

    return View(new SomeViewModel{
      Model1 = yourModel,
      Model2 = theOtherObject,
    })
    

    SomeViewModel 是一个你必须自己创建的类。

    在您看来,您可以像这样访问它: @Model.Model1.EmployeeCode @Model.Model2.WhateverYouHaveHere

    【讨论】:

    • 谢谢!!我以为它会归结为视图模型!会尝试这种方式!
    猜你喜欢
    • 1970-01-01
    • 2021-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-20
    相关资源
    最近更新 更多