【问题标题】:C# ASP.NET MVC 5 publish app with Enitity Framework (Css and SQL Error)C# ASP.NET MVC 5 使用实体框架发布应用程序(Css 和 SQL 错误)
【发布时间】:2019-11-29 14:11:17
【问题描述】:

我刚刚编写了一个带有简单用户登录的应用程序。以下是我已完成的步骤(出现 2 个错误,Css 未加载且无法建立 SQL 连接):

  1. 开发了应用程序并进行了测试(它使用实体框架进行数据库完美运行)

    结果:

  2. 在 Visual Studio 中发布了应用程序。

  3. 压缩应用程序。在 Windows Server 上的 inetpub (IIS WWWROOT) 中创建了一个名为 x 的文件夹。
  4. 为所有用户授予写/读访问权限
  5. 已将文件夹转换为应用程序。
  6. 已安装 Microsoft SQL Server Management Studio

    我的服务器名称叫:VPS-ZAP443076-1\EXPRESS

我已通过 Microsoft SQL Server Management Studio 成功连接到 SQL Server。 所以web.config中的连接字符串是这样的:

<connectionStrings>
    <add name="conn" 
         connectionString="Server=VPS-ZAP443076-1\EXPRESS;Database=AppAccessContext;" 
         providerName="System.Data.SqlClient"/>
</connectionStrings> 

确实如此。

然后我开始发布网站,现在看起来像这样(缺少完整的 CSS):

来自源的一些链接元素(已发布的应用程序):

link href="/x/Content/assets/appAccess?v=wc99y7YtU422ki4yrXaIKYQEv-4cIc0lpElJdFjVPoI1" rel="stylesheet"  (wrong)

应该是:

link href="/Content/assets/appAccess/frontend.css" rel="stylesheet"

这是我的bundle.config

BundleConfig.cs

所以,回到 SQL 部分,我在发布的应用程序中提交表单,我收到以下错误:

这里我把它翻译成英文(短版):

提供者:SQL 网络接口,错误:52 -
找不到本地数据库运行时安装。验证 SQL Server Express 是否已正确安装并且本地数据库运行时功能是否已启用。

我知道错误是“明确的”,但我不知道我还能做什么。它完全一团糟。

我还测试了每个 apppoolidentity,将 loadUserProfile 设为 true 等等。我真的很沮丧。有谁知道问题出在哪里?

编辑:我现在在谷歌上搜索了 32 小时没有修复,发现 90% 的印度视频或答案对我没有帮助。

【问题讨论】:

  • 没人能帮忙吗?
  • 我建议您将其分成两个单独的问题。真正的问题在哪里太令人困惑了。

标签: c# sql sql-server asp.net-mvc entity-framework


【解决方案1】:

捆绑配置:

 bundles.Add(new StyleBundle("~/Content/css").Include(
                  "~/Content/assets/appAccess/frontend.css"));

布局文件:

<head>
   <meta charset="utf-8" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   @Styles.Render("~/Content/css")    
</head>

Web.config:

<connectionStrings>
  <add name="conn" connectionString="Server=VPS-ZAP443076-1\EXPRESS;Initial Catalog=AppAccessContext;Integrated Security=true;MultipleActiveresultSets=true" 
     providerName="System.Data.SqlClient"/>
</connectionStrings> 

您的代码的更改:

  1. 添加了“集成安全=true;”到 Windows 的 Web.config
    SQL Server 的身份验证。
  2. 在布局文件中引用了包。

试试这个代码。希望这是不言自明且有意义的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-26
    相关资源
    最近更新 更多