如何使用CodeDOM初始化对象?

ePe*_*man 5 c# codedom

我需要初始化我的对象,如下所示:

var obj = new EduBranch {
    Id = model.Id,
    WorklevelId = model.WorklevelId,
    EdulevelId = model.EdulevelId,
    Title = model.Title,
    StartEduYearId = model.StartEduYearId,
    EndEduYearId = model.EndEduYearId,
};
Run Code Online (Sandbox Code Playgroud)

但在CodeDOM中,我只能找到:

var objectCreate1 = new CodeObjectCreateExpression("EduBranch", 
    new CodeExpression[]{});  
Run Code Online (Sandbox Code Playgroud)

这是使用括号来初始化而不是括号.是否有CodeDOM方法?(我已经使用stringBuilder创建了我的代码,但我正在寻找CodeDOM方法)谢谢

cas*_*One 5

CodeDom目前不支持对象初始值设定项(或者集合初始值设定项).

由于其他技术(例如T4模板),CodeDom多年来已经失宠.

那说,因为这行:

var obj = new EduBranch {
    Id = model.Id,
    WorklevelId = model.WorklevelId,
    EdulevelId = model.EdulevelId,
    Title = model.Title,
    StartEduYearId = model.StartEduYearId,
    EndEduYearId = model.EndEduYearId,
};
Run Code Online (Sandbox Code Playgroud)

实际上是有效的:

var obj = new EduBranch();

obj.Id = model.Id;
obj.WorklevelId = model.WorklevelId;
obj.EdulevelId = model.EdulevelId;
obj.Title = model.Title;
obj.StartEduYearId = model.StartEduYearId;
obj.EndEduYearId = model.EndEduYearId;
Run Code Online (Sandbox Code Playgroud)

您可以使用CodeDOM生成上述内容,并获得相同的内容