Windows 10通用应用程序访问SQL服务器。

7

我正在尝试创建一个Windows通用应用程序(UWP),并且需要访问SQL Server。

据我所知

  • System.Data.SqlClient不可用。
  • Entity Framework 7目前不支持UWP。

我需要一个服务层吗?


请查看EF博客 http://blogs.msdn.com/b/adonet/archive/2015/10/15/ef7-beta-8-available.aspx ,它似乎提到了UWP支持。我一直在寻找一种从UWP直接连接到SQL的方法,这可能有效。我还没有下载Beta版。 - Intensivist
3个回答

1

是的,需要一个服务层。这里有一个做法的例子:如何在Windows 10 UWP中访问SQL Server数据库中的数据

我有些疑惑,是否由于.NET Core对EF和ADO.NET的支持,以及这个页面的备注UWP中的EF Core1(重点在于我自己)而发生了改变:

目前,EF仅在UWP上支持SQLite。有关安装Entity Framework Core 1并创建模型的详细说明,请参阅Universal Windows Platform入门页面。

我的感觉是,UWP目前的主要问题是以统一的方式处理输入、布局和渲染,这是它旨在支持的设备系列中的一个重大挑战。SQLite得到了广泛的支持和认可;否则,他们似乎采用了数据合同/REST基础服务,这也得到了广泛的采用。


0

是的,您需要一个服务层。 无法直接连接UWP应用程序和SQL Server。

为什么不可能:

  • UWP应用程序是为从商店分发而创建的应用程序。在客户端计算机上存储连接字符串并不安全
  • 如果您发现错误,则无法同时更新所有客户端应用程序。更新服务更加简单快速

创建云服务的最简单方法是创建Azure移动应用程序,并使用其帮助将UWP应用程序连接到云SQL Server数据库。

仅适用于MySQL数据库,有可能使用Connector/Net直接连接UWP应用程序到数据库。但这不是连接移动应用程序和数据库的推荐方式


UWP不仅适用于移动设备,它是通用的!我需要我的UWP应用程序连接到客户端环境中的SQL服务器。配置存储在客户端的桌面上。 - Adam Paquette

0

发布此回复是因为自上次更新以来情况发生了变化。

自秋季创作者更新(SDK 16299)以来,UWP 支持 .NET Standard 2.0。这将 SqlClient 带到了 UWP,并允许您直接查询 SQL Server。

Ignite的会议上就此主题进行了演讲(videosource),还有一些博客文章提供了详细的 指南 来完成此操作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接