【问题标题】:How to make a structure map powered viewengine in asp.net mvc如何在 asp.net mvc 中制作结构图驱动的视图引擎
【发布时间】:2009-02-26 23:53:15
【问题描述】:

我的视图扩展了我创建的基本视图类:

public class BaseView : ViewPage

目前我在这个类的构造函数中调用 ObjectFactory.GetInstance 来获取一些接口实现,但我喜欢使用结构映射将它们作为构造函数参数注入。

我使用结构映射控制器工厂来创建我的控制器,但我怎样才能为视图做同样的事情?

我知道我可以实现自定义 ViewEngine,但是使用反射器查看 mvc 默认视图引擎及其依赖项,它似乎一直在继续,我宁愿不必重新实现已经存在的东西。有没有人知道如何解决这个问题?

我知道我可以使用 setter 而不是构造函数注入让事情变得更容易,但如果可能的话,我宁愿避免这种情况。

【问题讨论】:

  • 那么,您实际上希望能够控制哪些依赖项?涵盖所有内容可能是不切实际的......

标签: c# model-view-controller structuremap viewengine


【解决方案1】:

是的,如果您谈论的是 WebForms ViewEngine,那么您的评估是正确的,即它的设计并未考虑到控制反转。您可以游说 Microsoft 更改它,也可以使用 setter 注入。在 FubuMVC 中,我们使用 setter 注入和 StructureMap 的 BuildUp 方法:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-03-11
    • 1970-01-01
    • 2010-10-13
    • 2010-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多