在我的视图中使用viewModel的语法问题

时间:2011-07-10 06:15:18

标签: c# asp.net-mvc

我创建了这个类:

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(),但这对我没有帮助,因为我仍然得到相同的消息。

1 个答案:

答案 0 :(得分:2)

以下是在C#中使用object initializer的正确语法:

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