Mvc 列出嵌套在 Viewmodel 中的多个视图
Posted
技术标签:
【中文标题】Mvc 列出嵌套在 Viewmodel 中的多个视图【英文标题】:Mvc List Multiple Views Nested in Viewmodal 【发布时间】:2016-11-23 10:01:23 【问题描述】:大家好,你能帮我弄清楚如何在单个视图上列出嵌套的视图模型
这是我的带有嵌套 4 个视图的视图模型,其中包含 4 个不同的表数据。正如您在下面看到的“KentselDonusumViewModel”是主视图模型
public class KentselDonusumViewModel
public IList<agaclarViewModal> agaclarViewModal get; set;
public IList<fotografViewModal> fotografViewModal get; set;
public parselViewModal parselViewModal get; set;
public MahalleViewModal MahalleViewModal get; set;
public class agaclarViewModal
public int agac_id get; set;
public string agac_turu get; set;
public string yas_araligi get; set;
public int fiyat get; set;
public int parsel_id get; set;
public virtual parselViewModal parsel get; set;
public class fotografViewModal
public int fotograf_id get; set;
public string fotograf_adi get; set;
public string fotograf_url get; set;
public int parsel_id get; set;
public virtual parselViewModal parsel get; set;
public partial class parselViewModal
public int parsel_id get; set;
public int mahalle_id get; set;
public int ada_no get; set;
public int parsel_no get; set;
public int parsel_alani get; set;
public int kaks get; set;
public int insaat_alani get; set;
public virtual ICollection<agaclarViewModal> agac get; set;
public virtual ICollection<fotografViewModal> fotograf get; set;
public virtual MahalleViewModal MahalleViewModal get; set;
public partial class MahalleViewModal
public int mahalle_id get; set;
public string mahalle_adi get; set;
public virtual ICollection<parselViewModal> parsel get; set;
还有我的控制器
public ActionResult Listele()
var parselModal = (from p in db.parsel select new parselViewModal
ada_no=p.ada_no,
mahalle_id=p.mahalle_id,
insaat_alani=p.insaat_alani,
parsel_alani=p.parsel_alani,
kaks=p.kaks,
parsel_id=p.parsel_id,
parsel_no=p.parsel_no
).FirstOrDefault();
var mahalleModal = (from m in db.mahalle
select new MahalleViewModal
mahalle_id=m.mahalle_id,
mahalle_adi=m.mahalle_adi
).FirstOrDefault();
var viewModal = new KentselDonusumViewModel
parselViewModal=parselModal,
MahalleViewModal=mahalleModal,
agaclarViewModal = new List<agaclarViewModal>(),
fotografViewModal=new List<fotografViewModal>()
;
return View(viewModal);
这里看起来不错,但我不知道如何将这些人用于查看
你能帮忙吗?谢谢。
【问题讨论】:
【参考方案1】:是的,您可以轻松使用它,在您的视图中尝试以下 coden-ps 的类似操作
@for (int i = 1; i < Model.agaclarViewModal.Count; i++)
<label class="control-label font-weight none">@Model.agaclarViewModal[i].yas_araligi</label> <br />
告诉我,这对你有帮助吗....
【讨论】:
感谢您的回答,但我不明白您所说的“DefineMBPureMixModel”是什么意思实际上我的主要问题是将 和单个对象列出到单个视图中。我的意思是我可以将视图页面用作: foreach (var item in Modal) item.id ... 但我也有来自另一个视图的单个对象,我希望它显示在同一页面中,如 html.Display(x =>x.somedata> 希望我能解释一下自己 哎呀..这是我的模型名称..ohk..如果您的模型具有 List。您可以使用 foreach 并且对于具有相同模型的单个变量,您可以使用 Html.DisplayFor( x=>x.somedata)..试试这个你会得到解决方案 您好,我会尽快尝试以上是关于Mvc 列出嵌套在 Viewmodel 中的多个视图的主要内容,如果未能解决你的问题,请参考以下文章
Asp MVC angularjs 使用 viewmodel 在视图上嵌套 ng-repeat