正在将MVC站点从本地迁移到Azure,存在SQL问题

本文关键字:Azure 存在 问题 SQL 迁移 MVC 站点 | 更新日期: 2023-09-27 18:20:17

所以我一直在尝试将我的网站从本地运行迁移到Azure上,我遇到了很多问题,我已经在这个问题上坚持了很长一段时间,希望这里有人能帮忙:

我使用任务->创建查询将所有数据库迁移到Azure SQL,然后在Azure SQL中运行该查询。它稍微改变了结构(现在所有的表都在一个数据库中,它们都以"dbo"开头

当我尝试访问我的网站时,我目前遇到的错误是:

"应用程序配置文件中的连接字符串'UnitsDBContext'不包含所需的providerName属性。"

我的连接字符串:

  <connectionStrings>
    <add name="UnitsDBContext"
   connectionString="Server=tcp:cbf8vc1b7x.database.windows.net,1433;Database=Database;User ID=username;Password=password;Trusted_Connection=False;Encrypt=True;Connection Timeout=30;"
   providerName="System.Data.SqlClient"
    />
    <add name="DefaultConnection"
     connectionString ="Server=tcp:cbf8vc1b7x.database.windows.net,1433;Database=Database;User ID=username;Password=password;Trusted_Connection=False;Encrypt=True;Connection Timeout=30;"
     providerName = "System.Data.SqlClient;" />
  </connectionStrings>

每次我转到使用数据库的页面时都会出现错误或类似的错误,尽管其他页面加载良好。有人有什么建议吗?

正在将MVC站点从本地迁移到Azure,存在SQL问题

只是添加Ben Narube的想法:-

  • 您可以尝试记录连接字符串,以确保实际运行的内容是正确的。我提供了一个Log4Net示例(一定要在之后删除它并删除文件,因为你不想到处都是连接字符串):

    m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType );
    foreach( var connectionString in System.Configuration.ConfigurationManager.ConnectionStrings )
    {
        string outString = connectionString.ToString();
        m_log.Debug( outString );
    }
    
  • 您是否有替换此连接字符串的web.release.config或其他配置?例如,使用xdt:Locator="匹配(名称)

  • web.config中的连接字符串中有什么有趣的字符吗?也许可以在十六进制编辑器中查看是否存在