我想知道是否可以使用 IoC 容器注入(inject)特定的 ActionFilterAttribute
实现。
例如,假设您创建了一个 TransactionAttribute
类 [Transaction]
您可以使用它来装饰应包装在持久层事务中的操作。但是该属性的实现细节将与您使用的持久化技术相关联,严格来说,您的 Controller 不应该知道这一点,您可能希望将其换掉。
我想做的是定义某种TransactionAttribute
接口(interface),然后让我的 IoC 容器注入(inject)正确的实现。因此,在我的操作中,我只需要指定:
[Transaction]
public ActionResult SomeAction()
{
....
}
...并且 IoC 将根据配置注入(inject)正确的实现(例如 NHibernateTransactionAttribute
或 SomeOtherORMTransactionAttribute
)。
这可能吗?有人做过吗?
最佳答案
关于c# - DI : Injecting ActionFilterAttribute implementation (ASP. NET MVC),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2843040/