除了显式指定的属性外,依赖注入将停止对所有属性起作用。
控制器:
public class MyController : Controller
{
[Dependency]
public int RefreshInterval { get; set; }
[Dependency]
public IReportService ReportService { get; set;}
的Web.config:
<register type="My.Web.Controllers.MyController, My.Web, Version=1.0.0.0, Culture=neutral">
<property name="RefreshInterval" value="5000"></property> <!-- This one breaks other properties, injected by default -->
</register>
<register type="My.Model.IReportService, My.Model, Version=1.0.0.0, Culture=neutral"
mapTo="My.Model.ReportService, My.Model, Version=1.0.0.0, Culture=neutral">
</register>
现在我已经明确指定了一个属性,我是否也必须明确指定所有属性?有没有办法让其他属性默认注入?
答案 0 :(得分:0)
API或配置文件会覆盖属性。这就是它的工作方式。否则就无法关闭基于属性的注射。