【问题标题】:Spring.NET with MVC3 (Razor)Spring.NET 与 MVC3 (Razor)
【发布时间】:2011-03-31 12:45:20
【问题描述】:

我正在试验 ASP.NET MVC3 Razor,我印象非常深刻。这就是我们要走的路。

我们在我们的框架中使用 Spring.NET 进行依赖注入,我想知道是否也可以将它用于 MVC3 项目?

Spring.NET 的文档只是在谈论MVC2,但我猜未来的版本会支持MVC3。尽管如此,我还是试图让它发挥作用。到目前为止没有成功。

所以我的问题是,如果其他人找到了使用 Spring.NETMVC3 中进行依赖注入的方法或解决方法或技巧,如果是,如何? p>

我知道这是一个非常笼统的问题,但即使是诚实的“抱歉,这绝对是不可能的”或“它应该在没有任何修改的情况下工作”也会对我有很大帮助。

提前致谢, 一月

【问题讨论】:

    标签: asp.net-mvc-3 dependency-injection spring.net


    【解决方案1】:

    是的,即使最新的 Spring.NET 版本 (1.3.1) 明确支持 MVC2,它也可以(很容易地)用于支持 MVC3。与 MVC3 一起引入的 IDependencyResolver 接口使 IoC 集成比过去更加简单(仅提供一个单一的拦截/可插入点用于类型解析,而以前需要多个位置来拦截类型解析调用)。

    请参阅类似这样的博客文章:http://blog.alexkyprianou.com/2011/03/07/using-spring-net-with-mvc-3/,以获取有关如何执行此操作的更多信息和建议(与使用 MVC1 和 MVC2 执行此操作的工作量/复杂性相比,它确实非常简单。

    【讨论】:

    • 是的,当我在网上搜索解决方案并进行了尝试时,我已经阅读了此博客条目。它对我最初的问题没有帮助,后来证明是格式错误。感谢您提供非常有用的答案!
    【解决方案2】:

    无需修改即可工作。

    经过更多调查和同事的帮助后,我发现 Spring.NET 可以与 MVC3 一起使用——至少就我现在所见而言。我的原始问题是我的注入对象的格式错误的 xml 文件(我没有在问题中发布代码)。

    对象范围似乎仍然存在问题。范围request 似乎不起作用,因为我所有的对象仍然是单例,并且一旦创建,就不能处理多个请求。

    我尝试添加众所周知的属性singleton="false" 并且它以某种方式工作,所以我的对象现在将在每个请求上创建。好!

    但是我发现,Spring.NET 的示例Spring.MvcQuickStart.2010 也使用了singleton 属性,其值为false,所以这可能是正确的方法(和true默认)。

    我还不知道如何处理 session 范围,但至少我的 Web 应用程序适用于 Spring.NET 和 MVC3 的请求(singleton="false")和应用程序范围(无 singleton 属性) .

    最好, 一月

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-01
    • 2011-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多