visualstudio 2010-c#正在初始化内部属性



我有两个类:

public class TmpClass
{
    public TmpClass() 
    {
        InnerClass = new InnerClass();
    }
    public InnerClass InnerC { get; set; }
}
public class InnerClass
{
    public string Name { get; set; }
}

有没有可能像这样初始化InnerClass的属性,因为这样VS2010无法做到

TmpClass a = new TmpClass()
{
    InnerC.Name = "blabla"
}

使用下一个代码片段:

TmpClass a = new TmpClass
{
    InnerC = new InnerClass { Name = "Name" }
};

注意,默认情况下,new TmpClass语句将调用构造函数。还要注意:您有错误的构造函数声明。将TmpClass构造函数更改为下一个代码示例,这样它将编译:

public TmpClass() 
{
    InnerC = new InnerClass();
}
TmpClass a = new TmpClass()
{
    InnerC = new InnerClass
    {
        Name = "blabla"
    }
}

相关内容

  • 没有找到相关文章

最新更新