2011-07-10 138 views
1

我創建了這個類:語法問題

public class PageMeta 
{ 
    public string User { get; set; } 
    public string Title { get; set; } 
    public string Description { get; set; } 
    public string Keywords { get; set; } 
    public string Url { get; set; } 
    public string UrlShort { get; set; } 
    public string InfoBox { get; set; } 
} 

然後這一模式:

public class HomeIndexViewModel 
    { 
     public HomeIndexViewModel() 
     { 
      PageMeta = new PageMeta(); 
     } 
     public PageMeta PageMeta { get; set; } 
    } 

並試圖利用這樣的:

var homeIndex = new HomeIndexViewModel { // 1 
    PageMeta.Title = "ABC" // 2 
}; 

但它給了我一個錯誤VS2010說:

  • 「無法收集 初始化初始化類型 HomeIndexViewModel因爲它不 實現IEnumberable」「
  • 無法解析符號‘添加’< - 消息是紅色,並在那裏我 標記// 2

我希望有人能給我一些建議。我曾嘗試註釋掉構造函數public HomeIndexViewModel(),但這並沒有幫助我,因爲我仍然得到相同的消息。

回答

2

下面是正確的語法使用在C#中object initializer

var homeIndex = new HomeIndexViewModel 
{ 
    PageMeta = new PageMeta 
    { 
     Title = "ABC", 
     User = "DEF" 
    } 
}; 
+0

感謝達林。我認爲另一張海報的內容沒有意義,你確認了這一點。 – Maricel