C# 如何在asp.net mvc中制作结构图驱动的viewengine
我的视图扩展了我创建的基本视图类:C# 如何在asp.net mvc中制作结构图驱动的viewengine,c#,model-view-controller,structuremap,viewengine,C#,Model View Controller,Structuremap,Viewengine,我的视图扩展了我创建的基本视图类: public class BaseView : ViewPage 目前,我在这个类的构造函数中调用ObjectFactory.GetInstance来获得一些接口实现,但我想使用structuremap将它们作为构造函数参数注入 我使用structuremapcontrollerfactory来创建控制器,但是如何对视图执行相同的操作 我知道我可以实现一个自定义的ViewEngine,但是使用reflector来查看mvc默认的ViewEngine及其依赖项
public class BaseView : ViewPage
目前,我在这个类的构造函数中调用ObjectFactory.GetInstance来获得一些接口实现,但我想使用structuremap将它们作为构造函数参数注入
我使用structuremapcontrollerfactory来创建控制器,但是如何对视图执行相同的操作
我知道我可以实现一个自定义的ViewEngine,但是使用reflector来查看mvc默认的ViewEngine及其依赖项,它似乎一直在继续,我不想重新实现已经存在的东西。有人知道如何解决这个问题吗
我知道我可以使用setter而不是构造函数注入使事情变得更容易,但如果可能的话,我宁愿避免这种情况。是的,如果您谈论的是WebForms ViewEngine,您的评估是正确的,即它的设计没有考虑到控制反转。您可以游说Microsoft对其进行更改,也可以使用setter注入。在FubuMVC中,我们使用setter注入和StructureMap的构建方法:
- 创造 视图的实例
- 派生自WebFormsControlBuilder- 调用基来创建 实例,然后调用 在所有设备上执行setter注入 适用属性