繁体   English   中英

尝试通过 Visual Studio 在 UWP 应用程序中连接到我的本地 windows SQL 数据库

[英]Trying to connect to my local windows SQL database in a UWP application through Visual Studio

我有一个 UWP 应用程序,我正在使用 visual studio 在 C# 中工作,当我尝试连接到 SQL 数据库时,应用程序返回错误 40,但是当我使用 windows 表单应用程序时,它可以很好地连接到它(使用相同的连接字符串)。 该服务器是使用 windows 开发人员工具托管的客户端服务器。

尝试连接时出现错误消息

这是相关代码:

SqlConnection conn = new SqlConnection();
//connection string
private string conString = "Server=(local); Database=Diner; User=Temp; Password=12345";

SqlCommand cmd;
conn.ConnectionString = conString;
        cmd = conn.CreateCommand();

        try
        {
            string query = "select * from Meals;";
            cmd.CommandText = query;
            conn.Open();
            SqlDataReader reader = cmd.ExecuteReader();

            lbMeals.Text = "Today's Menu:\n ------------------------------------------\n";

            while (reader.Read())
            {
                int id = (int)reader["MealID"];
                string mealName = (string)reader["MealName"];
                string mealType = (string)reader["MealType"];
                decimal price = (decimal)reader["MealPrice"];
                lbMeals.Text += ($"{ id,5}{mealName,-15} {mealType,-15}{price,10}\n");
            }

            reader.Close();

        }
        catch (Exception ex)
        {
            lbSystemMsg.Text = "Failed to connect to Meals table: " + ex.Message;
            
        }
        finally
        {
            
            cmd.Dispose();
            conn.Close();


        }

这是我第一次使用 UWP 连接到数据库,所以我可能没有正确配置。 如前所述,服务器正在运行并且可以与 visual studio 中的其他应用程序连接,所以我认为问题是 Visual Studio 的一些配置问题或者可能是不正确的连接字符串格式。

首先,请确保您已经在清单文件中启用了一些功能,它们是Inte.net(Client & Server)Inte.net(Client)Private Networks(Client & Server)Enterprise Authentication

其次,我注意到您正在尝试连接到本地主机。 UWP 应用程序在沙盒中运行,因此它们是隔离的。 UWP 应用默认关闭本地环回。 您需要为您的设备启用本地环回。

您可以通过此命令启用本地环回

c:\>checknetisolation loopbackexempt -a -n=<package family name>

您可以通过此命令禁用本地环回

c:\>checknetisolation loopbackexempt -d -n=<package family name>

有关本地环回的更多信息,请参阅这些文档为 UWP 应用程序启用环回进程间通信(IPC)

暂无
暂无

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

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