C# 视图中引用不同表的引用表数据[MVC]
我在同一个数据库中有两个表,其中一个称为C# 视图中引用不同表的引用表数据[MVC],c#,asp.net-mvc,database,asp.net-mvc-5,C#,Asp.net Mvc,Database,Asp.net Mvc 5,我在同一个数据库中有两个表,其中一个称为 部分 另一个叫 Assembly 在编辑视图中,我从Parts表中获取数据。 我还需要从零件编辑视图中的Assembly表中获取特定数据。我需要获取的数据具有相同的列名 我需要使用@foreach在零件编辑视图中获取/显示此数据 下面是我正在使用的 @model webpares3.Data.Part @foreach(Model.Assembly中的var项){ 如果每个表中的列名相同,如何将部件表中的名称具体引用到零件数据中?您可以为此创建模型
部分
另一个叫
Assembly
在编辑视图中,我从Parts
表中获取数据。
我还需要从零件编辑视图中的Assembly
表中获取特定数据。我需要获取的数据具有相同的列名
我需要使用@foreach
在零件编辑视图中获取/显示此数据
下面是我正在使用的
@model webpares3.Data.Part
@foreach(Model.Assembly中的var项){
如果每个表中的列名相同,如何将部件表中的名称具体引用到零件数据中?您可以为此创建模型或视图模型:
public class ViewModel
{
public Part MyPart { get; set;}
public Assembly MyAssembly { get; set;}
}
然后,这就是您将传递给视图的内容:
public ActionResult Create()
{
ViewModel model = new ViewModel();
model.MyPart = new MyPart ()
{
ColumnName1 = "Details here",
ColumnName2 = 1
}
model.MyAssembly = //populate your Assembly details class
return View(model); //return your view with two classes on one class
}
现在,您可以在razor视图上执行此操作:
@Html.DisplayFor(x => x.MyPart.ColumnName1)
@Html.DisplayFor(x => x.MyPart.ColumnName2)
还有这个:
@Html.DisplayFor(x => x.MyAssembly.ColumnName1)
@Html.DisplayFor(x => x.MyAssembly.ColumnName2)
可以为此创建模型或ViewModel:
public class ViewModel
{
public Part MyPart { get; set;}
public Assembly MyAssembly { get; set;}
}
然后,这就是您将传递给视图的内容:
public ActionResult Create()
{
ViewModel model = new ViewModel();
model.MyPart = new MyPart ()
{
ColumnName1 = "Details here",
ColumnName2 = 1
}
model.MyAssembly = //populate your Assembly details class
return View(model); //return your view with two classes on one class
}
现在,您可以在razor视图上执行此操作:
@Html.DisplayFor(x => x.MyPart.ColumnName1)
@Html.DisplayFor(x => x.MyPart.ColumnName2)
还有这个:
@Html.DisplayFor(x => x.MyAssembly.ColumnName1)
@Html.DisplayFor(x => x.MyAssembly.ColumnName2)
我已经这样做了,但是当我执行
@foreach(model.MyAssembly.Name中的var model)时,我仍然在视图中得到一个错误“Part不包含“我的程序集”的定义”
我想澄清一下,是MyAssembly。命名一个类还是一个可枚举或列表?因为如果它只是一个模型而不是ienumerable,就不需要迭代它。它是数据库列中的一个条目,所以我相信它是一个类。我是MVC新手哈哈。不过,我还是遇到了一个错误,即“Part不包含当我执行@foreach(model.MyAssembly.Name中的var model)
时,视图中的“我的程序集”我想澄清一下,它是MyAssembly.Name还是MyAssembly.Name?命名一个类或一个枚举或列表?因为如果它只是一个模型而不是ienumerable,则无需重复它。它是数据库列中的一个条目,所以我相信它是一个类。我对MVC很陌生。