Mvc 列出嵌套在 Viewmodel 中的多个视图

Mvc List Multiple Views Nested in Viewmodal

大家好,你们能帮我弄清楚如何在单个视图上列出嵌套视图模型吗

这是我的视图模型,带有嵌套的 4 个视图,其中包含 4 个不同的 table 数据。正如您在下面看到的,"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);

这里看起来不错,但我不知道如何使用这些人进入 View

你能帮忙吗?谢谢。

是的,您可以轻松使用它,在您的视图中尝试下面的代码片段

@for (int i = 1; i < Model.agaclarViewModal.Count; i++)
{
 <label class="control-label font-weight     none">@Model.agaclarViewModal[i].yas_araligi</label> <br />
}

告诉我,这对您有帮助吗....