【问题标题】:Extensions for a ASP.NET MVC 3 Application?ASP.NET MVC 3 应用程序的扩展?
【发布时间】:2011-03-17 18:19:08
【问题描述】:

我需要编写一个可扩展的 ASP.NET MVC 3 应用程序,而 extension 是具有非常特定目的的.dll(即:论坛扩展、博客扩展、wiki 扩展等)。

虽然扩展不会有任何视图,但这应该会使这个过程更加简单。它应该只有控制器和几个模型

我一直在考虑用 MVC 区域实现这一点,并像这样加载它们:

// Global.asax

public static void PreApplicationStartMethod()
{
    foreach (var file in Directory.GetFiles(
        Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Extensions/"), "*.dll"))
    {
        BuildManager.AddReferencedAssembly(Assembly.LoadFile(file));
    }
}

protected void Application_Start()
{       
    AreaRegistration.RegisterAllAreas();
    ...
}

现在这工作得很好,但是,它似乎仍然是一种非常古老和静态的方式...... .NET 4 具有托管可扩展性框架。 MVC 3 具有依赖注入。

我已阅读有关便携式区域和 SharpArchitecture 的信息。我试图从源代码和文档中理解 Orchard 插件框架。但我仍然不确定我应该使用什么。

为了使我的问题更实用 - 您如何将外部项目中的控制器和模型包含到主 MVC Web 应用程序中?做这个的最好方式是什么?我应该在这里使用依赖注入吗?

谢谢。

【问题讨论】:

  • 最近有人告诉我,这个社区不赞成仅链接的答案。不知何故,我觉得这很矛盾。

标签: asp.net-mvc-3 dependency-injection mef autofac


【解决方案1】:
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-17
  • 1970-01-01
  • 2015-02-09
  • 2010-10-29
  • 2011-08-06
相关资源
最近更新 更多