【问题标题】:Asp.net core 2.1 Web App not rendering correctly on IISAsp.net core 2.1 Web App 无法在 IIS 上正确呈现
【发布时间】:2019-06-26 22:11:17
【问题描述】:

是时候进行大型发布了!好吧,直到 IIS 开始发挥不错。我和一位同事花了 6 个多小时尝试将 ASP.NET Core 2.1 Web 应用程序发布到内部 IIS 服务器。经过多轮错误代码和调整,我们能够让应用程序在某种程度上托管在 IIS 上,但有一个大问题,渲染有点偏离。语言无法解释它的外观。

What it looks like 这就是正在渲染的内容。我注意到的一件事是,当您在页面上执行 ctrl-u 时,页面代码就在那里。

它应该是这样的:https://i.stack.imgur.com/dv6xN.png

如果有人知道发生了什么,请提供任何帮助!

【问题讨论】:

  • 使用浏览器开发工具或 Fiddler,调试请求/响应。

标签: asp.net iis asp.net-core-2.1 razor-pages


【解决方案1】:

这是一个简单的修复,只是我的一个错误!希望这有助于所有未来的 Asp.net 核心开发人员准备发布。通过进一步调查,很明显 Web 应用程序正在执行,只是渲染不正确。很明显,引导程序没有被击中,这导致了所有的渲染错误。

在 Asp.net 核心样板代码中,_Layout.cshtml 页面包含环境标记中的所有链接和脚本,如下所示:

    <environment include="Development">
      <link rel="stylesheet" href="~/lib/bootstrap/dist/css/bootstrap.css" />
      <link rel="stylesheet" href="~/css/site.css" />
    </environment>
    <environment exclude="Development">
      <link rel="stylesheet" href="https://ajax.aspnetcdn.com/ajax/bootstrap/3.3.7/css/bootstrap.min.css" asp-fallback-href="~/lib/bootstrap/dist/css/bootstrap.min.css" asp-fallback-test-class="sr-only" asp-fallback-test-property="position" asp-fallback-test-value="absolute" />
      <link rel="stylesheet" href="~/css/site.min.css" asp-append-version="true" />
    </environment>

只需删除这些环境标签,就可以点击正确的链接和脚本,现在一切都可以正常呈现了。

【讨论】:

    【解决方案2】:

    在不查看源代码的情况下确定此处的问题有点困难,但可能您只是在显示导航栏,并且它正在扩展以适应整个屏幕,从而也扭曲了图标的顺序。确保它是在 IIS 上运行的整个应用程序。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-22
      • 2018-10-26
      • 2019-03-18
      • 1970-01-01
      • 2018-09-22
      相关资源
      最近更新 更多