小编Sea*_*man的帖子

UnityMvcActivator或global.asax

我有两个问题。我安装了Unity和Unity MVC软件包开始对其进行调查。通过注册一些类型,我得到了一些简单的控制器构造函数注入,因此运行顺利。我注意到,由于以下原因,甚至在global.asax被击中之前,它就已经开始了:

[assembly: WebActivatorEx.PreApplicationStartMethod(typeof(example.org.UnityMvcActivator), nameof(example.org.UnityMvcActivator.Start))]
Run Code Online (Sandbox Code Playgroud)

问题1:此语法的名称甚至是什么?某种将类型/方法附加到其他地方的嵌入式汇编引用?我以前从未见过。

问题2:UnityMvcActivator具有与上面的[assembly]行相对应的Start()和Shutdown()方法,其中的后一项仅在容器上进行处理。Start()的核心元素是调用:

DependencyResolver.SetResolver(new UnityDependencyResolver(UnityConfig.Container));
Run Code Online (Sandbox Code Playgroud)

是否存在一个令人信服的原因(例如dispose()这样的UnityMvcActivator存在),或者它可能需要尽早启动,或者只是为了让我开始而做的简单脚手架,我也可以将SetResolver()行放入其中我的global.asax,然后删除此类?

.net asp.net-mvc unity-container

6
推荐指数
0
解决办法
715
查看次数

标签 统计

.net ×1

asp.net-mvc ×1

unity-container ×1