我需要初始化我的对象,如下所示:
var obj = new EduBranch {
Id = model.Id,
WorklevelId = model.WorklevelId,
EdulevelId = model.EdulevelId,
Title = model.Title,
StartEduYearId = model.StartEduYearId,
EndEduYearId = model.EndEduYearId,
};
但在CodeDOM中我只能找到:
var objectCreate1 = new CodeObjectCreateExpression("EduBranch",
new CodeExpression[]{});
这是使用括号来初始化而不是括号。 是否有CodeDOM方法? (我已经使用stringBuilder创建了我的代码,但我正在寻找CodeDOM方法)谢谢
答案 0 :(得分:5)
CodeDom目前不支持object initializers(或者集合初始值设定项)。
由于其他技术(例如T4 templates),CodeDom多年来已经失宠了。
那说,因为这一行:
var obj = new EduBranch {
Id = model.Id,
WorklevelId = model.WorklevelId,
EdulevelId = model.EdulevelId,
Title = model.Title,
StartEduYearId = model.StartEduYearId,
EndEduYearId = model.EndEduYearId,
};
实际上与:
相同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;
您可以使用CodeDOM生成上述内容,并获得相同的