Azure网站ASP.net WebPages"由于发生内部服务器错误,无法显示页面。"

时间:2014-10-11 13:17:17

标签: azure azure-web-sites asp.net-webpages

我在WebPages中开发了一个应用程序,并在Azure上托管该网站。它给我错误“由于发生内部服务器错误,无法显示页面。” 我不确定我做错了什么。 下面是Web.config文件。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.web>
    <compilation debug="true" targetFramework="4.5">
      <assemblies>
        <add assembly="System.Web.Helpers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
        <add assembly="System.Web.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
        <add assembly="System.Web.Webpages, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
      </assemblies>
        </compilation>
    <httpRuntime targetFramework="4.5" />
      <customErrors mode="Off"/>

  </system.web>
  <system.data>
    <DbProviderFactories>
      <remove invariant="System.Data.SqlServerCe.4.0" />
            <add invariant="System.Data.SqlServerCe.4.0" name="Microsoft® SQL Server® Compact 4.0" description=".NET Framework Data Provider for Microsoft SQL Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=4.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
    </DbProviderFactories>
  </system.data>
    <runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
         <dependentAssembly>
        <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
        <bindingRedirect oldVersion="0.0.0.0-1.0.0.0" newVersion="2.0.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Razor" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
        <bindingRedirect oldVersion="0.0.0.0-1.0.0.0" newVersion="2.0.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
        <bindingRedirect oldVersion="0.0.0.0-1.0.0.0" newVersion="2.0.0.0"/>
      </dependentAssembly>
      </assemblyBinding>
   </runtime>


  <connectionStrings><add name="SQLAzure" connectionString="Data Source=###;Initial Catalog=###;User ID=### ;Password=###;Encrypt=true;Trusted_Connection=false;" providerName="System.Data.SqlClient" />

</connectionStrings>
</configuration>

如果我删除了assemblyBindings“无法加载文件或程序集'System.Web.Helpers'”弹出错误。任何帮助都会很棒,谢谢。

2 个答案:

答案 0 :(得分:0)

如果您使用的是Visual Studio,则应该可以通过remote debugging your Azure web site

确定错误

如果您没有使用Visual Studio

,这是另一个troubleshooting reference

答案 1 :(得分:0)

Azure网站有System.Web.Helpers,版本= 1.0.0.0,您的web.config指的是Version = 2.0.0.0。 是的,您可以将正确的版本从GAC复制到bin,但这不是最佳解决方案,因为您必须将二进制文件上传到Azure,这不是您的工作。

最好的解决方案是使用NuGet包管理器。

您可以从视觉工作室进行操作 在Package Manager Console Install-Package microsoft-web-helpers

中运行以下命令