我正在开发通用Windows应用程序,在我的一个项目中,我想连接Azure SQL数据库,因为我在下面写了一行代码。
try
{
SqlConnection connection = null;
string query = null;
//DateTime datetime = DateTime.Now;
connection = new SqlConnection("Data Source=xxxxxx.database.windows.net;Initial Catalog=xxxxx_db;Integrated Security=False;User ID=xxxxx;Password=xxxxx;Connect Timeout=60;Encrypt=False;TrustServerCertificate=True;ApplicationIntent=ReadWrite;MultiSubnetFailover=False");
connection.Open();
// Converts image file into byte[]
// byte[] imgData = File.ReadAllBytes(App.m_photoStorageFile.Path);
//query = "INSERT INTO [dbo].[Delivery_Analytics.DeliveryPerson_Information] (Name,MobileNumber,CompanyName,DeliveryAddress,Image,Timestamp)" +
// "Values ('" + nameTxtBx.Text + "','" + mobileNumTxtBx.Text + "','" + comapanyNameTxtBx.Text + "','" + deliveryAddress + "','" + pictureTxtBx.Text + "','" + dateTime + "')";
using (SqlCommand cmd = new SqlCommand(query, connection))
{
cmd.ExecuteNonQuery();
connection.Close();
}
}
catch (Exception ex)
{
}
对于SqlConnection类,我在将此引用添加到我的项目后添加了Reference as System.Data.SqlClient 4.1.0,然后我现在尝试重建项目,我得到了如下的异常。
严重级代码说明项目文件行抑制状态 错误有效载荷包含两个或多个具有相同目标路径的文件&Systems.Diagnostics.Tools.dll'。源文件: C:\ Users \用户pradeep.nuget \包\ runtime.any.System.Diagnostics.Tools \ 4.0.1 \ LIB \ netcore50 \ System.Diagnostics.Tools.dll C:\ Users \ pradeep.nuget \ packages \ System.Diagnostics.Tools \ 4.0.0 \ lib \ netcore50 \ System.Diagnostics.Tools.dll SqlClientPOC
请告诉我如何尽快解决此错误。
答案 0 :(得分:1)
我们无法直接从UWP Apps连接到Microsoft SQL Server。您引用的System.Data.SqlClient 4.1.0包是.Net Core库。我们可以在.NET Core应用程序(ASP.NET核心应用程序或控制台应用程序)中使用此库,但是,我们无法在UWP应用程序中使用它。
从UWP应用程序访问Microsoft SQL Server数据库的常用方法是托管数据服务,应用程序通过REST API或WCF服务查询数据。例如,您可以查看How to access data from SQL Server database in Windows Store app。此视频演示如何创建WCF服务以从Windows应用商店应用中的SQL Server数据库访问数据。
由于您使用的是Azure SQL数据库,因此您可以选择在项目中使用Azure App Service,尤其是Mobile Apps。有关详细信息,请参阅Create a Windows app,Work with the .NET backend server SDK for Azure Mobile Apps和How to use the managed client for Azure Mobile Apps。