繁体   English   中英

在Azure中托管网站并使用sql Server

[英]Hosting website in Azure and Using sql Server

我在C#中使用SQL Server数据库在Visual Studio Community 2013上构建ASP.NET网站。

我想将其托管在Microsoft Azure中。 我登录Microsoft Azure并在其上发布我的网站。

当我尝试从数据库中选择行时,出现该错误:

Exception Details: System.ComponentModel.Win32Exception: The system cannot find the file specified [Win32Exception (0x80004005): The system cannot find the file specified]

[SqlException (0x80131904): A network-related or instance-specific error occurred while establishing a connection to SQL Server.

我的connectionString是:

string connStr = @"Data Source=(LocalDB)\v11.0;AttachDBFilename=""C:\Users\MyComp\Documents\Visual Studio 2013\Projects\Test\Test\App_Data\MyDB.mdf"";Integrated Security=True";

我的数据库具有Windows身份验证

我需要进行什么更改以及如何进行更改以使从db读取数据有效?

谢谢!

您需要将连接字符串更改为:

Server=tcp:[serverName].database.windows.net;Database=[myDataBase];
User ID=[LoginForDb]@[serverName];Password=[myPassword];Trusted_Connection=False;
Encrypt=True;

其中[serverName]是您的服务器名称,等等。

实际上,您是从连接字符串指向本地主机上的SQL数据库服务器的。

您的Azure Web应用程序不知道如何找到您的localhost SQL数据库服务器和附加的数据库文件(.mdf)。

这是一种解决方案:

  1. 在Azure上创建一个新的SQL数据库,它将自动创建一个新的SQL Server
  2. 将您的本地SQL数据库迁移到上面创建的Azure SQL数据库。 请参阅将SQL Server数据库迁移到Azure SQL数据库
  3. 请注意,Azure SQL数据库不支持Windows身份验证。 您可以寻找替代方法,例如使用Azure Active Directory身份验证通过使用Azure Active Directory身份验证或SQL Server身份验证连接到SQL数据库

创建Azure SQL数据库后,它将为您提供应用程序所需的连接字符串。 转到SQL Azure DB的仪表板,在右侧,您将看到“显示连接字符串”

为了清楚起见,您不能将.mdf数据库与Azure Web Apps一起使用,需要创建虚拟机。 最好的选择是将Web Apps与SQL Azure数据库一起使用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM