首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >ASP.NET MVC5在项目之间共享包

ASP.NET MVC5在项目之间共享包
EN

Stack Overflow用户
提问于 2018-10-25 02:25:22
回答 1查看 458关注 0票数 1

我的解决方案下有3个项目:

  • Account
  • Management
  • Domain

Account和Management都是MVC 5应用程序。帐户位于IIS中的根目录(http://localhost/),管理位于该目录中的应用程序(http://localhost/Management)。域是一个类库,因此我可以在它们之间共享数据库上下文。

我正在使用bundle来提供我的JS和CSS文件。下面是Account应用程序中App_Start/BundleConfig.cs的代码片段。

代码语言:javascript
复制
public static void RegisterBundles(BundleCollection bundles)
{
    bool developerMode = Environment.MachineName != "LIVE_MACHINE";
    string libScriptsDirectory = "~/Public/scripts/lib/";
    string libStylesDirectory = "~/Public/styles/lib/";

    string[] libScripts = new string[]
    {
        libScriptsDirectory + (developerMode == true ? "vue-2.5.17.dev.js" : "vue-2.5.17.min.js"),
        libScriptsDirectory + "vuetify-1.3.1.js",
        libScriptsDirectory + "vue-resource-1.5.1.js",
        libScriptsDirectory + "vue-snotify-3.2.1.js",
        libScriptsDirectory + "moment-2.22.2.js"
    };

    string[] libStyles = new string[]
    {
        libStylesDirectory + "material-41.css",
        libStylesDirectory + "font-awesome-4.7.0.css",
        libStylesDirectory + "vuetify-1.3.1.css",
        libStylesDirectory + "vue-snotify-3.2.1.css"
    };

    bundles.Add(new ScriptBundle("~/bundles/lib.min.js").Include(libScripts));
    bundles.Add(new StyleBundle("~/bundles/lib.min.css").Include(libStyles));

    BundleTable.EnableOptimizations = !developerMode;
}

这与Account应用程序中的@Scripts.Render("~/bundles/lib.min.js")配合使用非常好,我甚至可以在管理应用程序中执行@Scripts.Render("/bundles/lib.min.js")。唯一的问题是,当我在开发环境中时,我想使用BundleTable.EnableOptimizations。这在帐户应用程序下是可能的,因为当它设置为false时,我得到的所有JS和CSS文件都是非捆绑的,但对于管理应用程序则不是这样,因为我没有引用虚拟路径,所以它总是检索捆绑的版本。

我并不特别希望有两组相同的代码来做同样的事情。有没有办法让我的静态JS和CSS文件放在一个地方,并利用这两个应用程序中的捆绑来提供捆绑和非捆绑的文件?据我所知,捆绑包不允许绝对路径,所以我知道这不是一个选择。

EN

回答 1

Stack Overflow用户

发布于 2018-10-25 03:42:05

我通过添加一个虚拟目录来解决这个问题,该目录指向我想使用的JS和CSS文件的绝对路径。我将这个虚拟目录添加到每个应用程序中,因此/Lib/...works和/Management/Lib/...很管用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52975713

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档