2016-11-10 39 views
2

逗人,ASP.NET視圖和模型,一個小問題

請你能幫助我理解很簡單的事情

我有模型,我的課:

public class VendorAssistanceViewModel 
{ 
    public string Name { get; set; } 
    public bool Checked { get; set; } 
} 
public partial class CSModel : IEntity 
{ 
    public CSModel() 
    { 

     VendorAssistances = new[] 
     { 
     new VendorAssistanceViewModel { Name = "DJ/BAND" }, 
     new VendorAssistanceViewModel { Name = "Officiant" }, 
     new VendorAssistanceViewModel { Name = "Florist" }, 
     new VendorAssistanceViewModel { Name = "Photographer" }, 
     new VendorAssistanceViewModel { Name = "Videographer" }, 
     new VendorAssistanceViewModel { Name = "Transportation" }, 
     }.ToList(); 
    } 


    public IList VendorAssistances { get; set; } 

我有看法:

@model IEnumerable<CSTS.Models.CSModel> 

//some html code... 

我想知道如何顯示從型號複選框,使用VendorAssistances的陣列? 我知道這很簡單,我看了很多文檔,但還是不明白

謝謝!

修訂

我嘗試做如下:

  1. 分爲對照組在

      public override ActionResult Index(int pageNumber, int pageSize, string nothing) 
        { 
    
        List<VendorAssistanceViewModel> VendorAssistances = new[] 
    { 
    new VendorAssistanceViewModel { Name = "DJ/BAND" }, 
    new VendorAssistanceViewModel { Name = "Officiant" }, 
    new VendorAssistanceViewModel { Name = "Florist" }, 
    new VendorAssistanceViewModel { Name = "Photographer" }, 
    new VendorAssistanceViewModel { Name = "Videographer" }, 
    new VendorAssistanceViewModel { Name = "Transportation" }, 
    }.ToList(); 
    

我已經添加了手錶VendorAssistances並插入斷點,所有的時間tihs對象爲NULL

爲什麼?

+0

爲什麼使用CSModel的部分類? – Mohanraja

+0

http://www.c-sharpcorner.com/uploadfile/4d9083/creating-simple-checkboxlist-in-mvc-4-using-razor/ –

+0

不幸的是可以回答,這是一個ASP.NET網站的代碼,並且需要在此處做一些更改 – Fullbalanced

回答

1

你只需要遍歷Model.VendorAssistances,併發出HTML代碼爲每個VendorAssistanceViewModel。您可以使用此代碼:

@foreach(var model in Model) 
{ 
    for(int i=0; i < model .VendorAssistances.Count; i++) 
    { 
     @Html.CheckBoxFor(x => model.VendorAssistances[i].Name) 
    } 
} 

又讀this問題,可以幫助你undedrerstand如何產生的陣列發佈到行動。

+0

謝謝,但出現錯誤消息CS1061:'System.Collections.Generic.IEnumerable '不包含'VendorAssistances'的定義,也沒有擴展方法'VendorAssistances'接受第一個參數可以找到類型'System.Collections.Generic.IEnumerable '(你是否缺少使用指令或程序集引用?) – Fullbalanced

+0

我已經更新了代碼。你可以請嘗試,如果它適合你。請不要忘記標記爲答案,如果它確實:) –

+0

同樣的錯誤( – Fullbalanced