Est-il possible que les aspects Spring.Net ne fonctionnent pas avec le contrôleur Asp.Net?Contrôleur Asp.Net MVC: AOP déclaratif avec Spring.Net
Je souhaite configurer des transactions sur les méthodes Action des contrôleurs, mais le proxy ne semble pas déclencher.
<object id="ControllerClassPointcut" type="Spring.Aop.Support.SdkRegularExpressionMethodPointcut, Spring.Aop">
<property name="patterns">
<list>
<value>xxx.Controllers.CompanyController.*</value>
</list>
</property>
</object>
<aop:config>
<aop:advisor pointcut-ref="ControllerClassPointcut" advice-ref="TxAdvice"/>
<!-- TxAdvice taken from ServiceContext -->
</aop:config>
<tx:advice id="TxAdvice" transaction-manager="TransactionManager">
<tx:attributes>
<tx:method name="*" propagation="Required"/>
</tx:attributes>
</tx:advice>
et la méthode d'action du CompanyController est:
[HttpPost]
public virtual ActionResult Create(Guid id, CompanyonViewModel vm)
{
...
}
mais je le conseil ne prend pas effet bien est reconnu pointcut. Si je prends une autre classe qu'un contrôleur comme pointcut cela fonctionne.
Pour certaines méthodes, le conseil fonctionne. Par exemple pour le setter pour le référentiel. Mais Sprint.Net ne reconnaît pas que la méthode d'action "Create" est appelée
Le candidat est: 'xxx.Controllers.CompanyController.set_CompanyService'; Le modèle est 'xxx.Controllers.CompanyController.'; matched = True Conseiller candidat [DefaultObjectFactoryPointcutAdvisor: pointcut [Spring.Aop.Support.SdkRegularExpressionMethodPointcut]; conseils objet = 'TxAdvice'] accepté pour targetType [xxx.Controllers.CompanyController]
Merci pour votre aide
En relation: http://stackoverflow.com/questions/9114762/unobtrusive-aop-with-spring-net/9115510 – Marijn