我在使用 spring.net 4.0 和 nhibernate 3.0 为基于 ASP.net 的 Web 应用程序开发 Web 应用程序方面有中等经验。最近我遇到了一种情况,我需要使用 spring.net 来注入属于WorkerRole
该类的服务依赖项。我创建了 app.config 文件,就像我通常在春季使用 web.config 文件一样。这是为了清楚起见。(我已经排除了根节点)
<configSections>
<sectionGroup name="spring">
<section name="context" type="Spring.Context.Support.WebContextHandler, Spring.Web" requirePermission="false" />
<section name="objects" type="Spring.Context.Support.DefaultSectionHandler, Spring.Core" requirePermission="false" />
<section name="parsers" type="Spring.Context.Support.NamespaceParsersSectionHandler, Spring.Core" />
</sectionGroup>
</configSections>
<spring>
<context>
<!-- Application services and data access that has been previously developed and tested-->
<resource uri="assembly://DataAccess/data-access-config.xml" />
<resource uri="assembly://Services/service-config.xml" />
<resource uri="AOP.xml" />
<resource uri="DI.xml"/>
</context>
<parsers>
<parser type="Spring.Data.Config.DatabaseNamespaceParser, Spring.Data" />
<parser type="Spring.Transaction.Config.TxNamespaceParser, Spring.Data" />
<parser type="Spring.Aop.Config.AopNamespaceParser, Spring.Aop" />
</parsers>
</spring>
同样,这是 AOP.xml
<object id="FilterServiceProxy" type="Spring.Aop.Framework.ProxyFactoryObject, Spring.Aop">
<property name="proxyInterfaces" value="Domain.IFilterService"/>
<property name="target" ref="FilterService"/>
<property name="interceptorNames">
<list>
<value>UnhandledExceptionThrowsAdvice</value>
<value>PerformanceLoggingAroundAdvice</value>
</list>
</property>
</object>
</objects>
和 DI.xml
<object type="FilterMt.WorkerRole, FilterMt" >
<property name="FilterMtService1" ref="FilterServiceProxy"/>
</object>
但是,我无法将任何依赖项注入工作角色。有人可以让我知道我在这里做错了什么吗?是否有其他方法可以为 Windows azure 应用程序配置 Spring.net DI?
我没有收到任何配置错误,但我看到依赖项尚未注入,因为我尝试注入的属性对象仍然为空。