【问题标题】:How to publish an MVC 6 website in IIS with multiple apps in the src folder如何在 IIS 中发布 MVC 6 网站,在 src 文件夹中有多个应用程序
【发布时间】:2015-03-25 16:24:24
【问题描述】:

当我尝试在“src”文件夹中发布一个包含多个 Web 应用程序的 asp.net 5 网站时。它在klr 中工作正常,但如果我在 IIS 下运行它,我会收到此错误:

Failed to resolve the following dependencies for target framework 'Asp.Net,Version=v5.0'

这是一个非常基本的简单项目,您可能希望在 IIS 下运行。

http://www.filedropper.com/iissampleapp

更新:按要求更新我的问题。

在附加的项目中,我只需右键单击“IISSampleApp”,然后单击发布。 Visual Studio 在本地文件系统上创建文件,然后我尝试在 IIS 下运行。发布后,这两个 Web 应用程序都位于 src 文件夹下,分别为 src\IISSampleAppsrc\SubAppIISSampleApp 是应该作为网站运行的主要应用程序,它只是引用来自SubApp 的类DateClass

我已经创建了这个示例项目来获得答案,我的实际项目具有相似的结构并且我得到了同样的错误。

我已经在这里上传了项目的预编译版本:http://www.filedropper.com/precompilediissample

下面是我生成的 web.config

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <appSettings>
    <add key="kpm-package-path" value="..\approot\packages" />
    <add key="bootstrapper-version" value="1.0.0-beta3" />
    <add key="runtime-path" value="..\approot\packages" />
    <add key="kre-version" value="1.0.0-beta3" />
    <add key="kre-clr" value="clr" />
    <add key="kre-app-base" value="..\approot\src\IISSampleApp" />
  </appSettings>
</configuration>

【问题讨论】:

    标签: asp.net-core asp.net-core-mvc


    【解决方案1】:

    编辑 web.config:

    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
      <appSettings>
        <add key="kpm-package-path" value="..\approot\packages" />
        <add key="bootstrapper-version" value="1.0.0-beta3" />
        <add key="runtime-path" value="YOUR-RUNTIME-BASE-PATH\.k\runtimes" />
        <add key="kre-version" value="1.0.0-beta3" />
        <add key="kre-clr" value="clr" />
        <add key="kre-app-base" value="..\approot\src\YOURPROJECT" />
      </appSettings>    
    </configuration>
    

    并为\approot\wwwroot设置安全策略

    更新:在问题更新后更新答案

    这不能像这样工作,因为kpm bundle 命令将网站打包为网站而不是类库,并且您有 2 个 Startup 类,这是不好的。如果您想在 2 个网站之间共享代码,请创建一个类库。

    【讨论】:

    • 我认为我在附加项目的 web.config 中有相同的键? approotwwwroot 文件夹的安全策略应该是什么?我添加了网络服务访问,但仍然无法正常工作。如果我将所有内容放在一个 web 应用程序中,一切都会正常工作。但是当有两个网络应用时问题就来了。
    • 在您提供的项目中有kpm bundle 输出。你是怎么发布 IIS 的?
    • 我通过 Visual Studio 2015 CTP 6 在文件系统上发布它。
    • 你能给我生成的 web.config 文件吗?您发布到 2 个位置还是仅 1 个?您是否发布到包含 IISSample 项目和子 Web 应用程序中的子应用程序的 1 个网站?你能用你的配置的最大细节更新你的问题吗?
    • 您解决了问题吗?我也有类似的问题。
    猜你喜欢
    • 1970-01-01
    • 2018-05-09
    • 1970-01-01
    • 2016-12-02
    • 1970-01-01
    • 1970-01-01
    • 2015-07-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多