【发布时间】:2015-07-20 14:03:50
【问题描述】:
我正在使用依赖注入在我的项目中传递方法/模型。在这个例子中,我为我的模型实例化了一个变量。这样做的目的是避免在我的课堂上“更新”模型。
但是在过去,当我创建一个嵌套模型时,我做了一些类似的事情:
var myModel = new ParentTicket {
ticketId = "123",
topic = "example",
new SubData {
DateOpened = "01/01/1900",
Status = "Active"
}
}
我喜欢上述方法,因为我可以将模型的所有属性设置在清晰易读的块中。但由于我避免更新我的模型,而是通过 DI 传递它,我无法弄清楚如何使用这个块形式。目前我必须逐行设置每个属性:
_myModelviaDI.ParentTicket.ticketId = "1234";
_myModelviaDI.ParentTicket.topic="example";
我确信有一种方法可以像我的第一个示例一样设置属性,而无需更新模型,但我不知道是否/如何做到这一点。
谢谢。
【问题讨论】:
-
值得记住的是,并非所有东西都需要注入。 IE。你为什么要注入看起来不过是 DTO 的东西?
-
您不需要 DI。顺便说一句,大多数时候 DI 对服务有意义,而不是对你拥有的每个模型。
-
谢谢大家,我确实想知道 DI 是否适用但不确定,我会坚持我的做法 :o)
标签: c# asp.net asp.net-mvc dependency-injection asp.net-web-api