小编Lit*_*ost的帖子

Unity中的Setter/property注入没有属性

我正在开发一个项目,其中Unity框架用作IoC容器.我的问题涉及使用property-或setter注入将可选依赖项(在本例中为记录器)注入到几个类中.

我不想使用这些可选的依赖项来混乱所有类的构造函数,但是我找不到在Unity中处理它的好方法.根据MSDN文档,您可以通过向属性添加属性来实现此目的:

private ILogger logger; 

[Dependency]
public ILogger Logger
{
get { return logger; }
  set { logger = value; }
}
Run Code Online (Sandbox Code Playgroud)

我觉得这很难看.在StructureMap中,可以执行以下操作来设置给定类型的所有属性:

SetAllProperties(policy => policy.OfType<ILog>());
Run Code Online (Sandbox Code Playgroud)

有谁知道在Unity中是否有可能做类似的事情?

编辑:

Kim Major建议使用这种方法,也可以通过代码实现.

我会对如何自动为所有匹配属性执行此操作的示例感兴趣.

.net inversion-of-control unity-container

24
推荐指数
5
解决办法
2万
查看次数

从使用HTTPModule中排除某些页面

有没有一种好方法可以排除某些页面使用HTTP模块?

我有一个使用自定义HTTP模块验证会话的应用程序.HTTP配置在web配置中设置如下:

<system.web>
  <!-- ... -->
  <httpModules>
    <add name="SessionValidationModule"
       type="SessionValidationModule, SomeNamespace" />
  </httpModules>
</system.web>
Run Code Online (Sandbox Code Playgroud)

要从页面中排除模块,我尝试这样做(没有成功):

<location path="ToBeExcluded">
  <system.web>
    <!-- ... -->
    <httpModules>
      <remove name="SessionValidationModule" />
    </httpModules>
  </system.web>
</location>
Run Code Online (Sandbox Code Playgroud)

有什么想法吗?

.net asp.net

15
推荐指数
3
解决办法
1万
查看次数