从C++ XAML UWP应用程序与Azure App Services中托管的SQLServer数据库集成的最佳方式是什么?通过C++ UWP App与Azure应用程序服务集成
这些示例是使用Azure移动服务SDK的基于C#的示例。我可能能够将其包装在C#运行时组件中?还是有其他选择吗?
查看SDK后,它看起来是简单的HTTP请求,所以如果API被记录,我可以直接使用它?
感谢您的帮助。
从C++ XAML UWP应用程序与Azure App Services中托管的SQLServer数据库集成的最佳方式是什么?通过C++ UWP App与Azure应用程序服务集成
这些示例是使用Azure移动服务SDK的基于C#的示例。我可能能够将其包装在C#运行时组件中?还是有其他选择吗?
查看SDK后,它看起来是简单的HTTP请求,所以如果API被记录,我可以直接使用它?
感谢您的帮助。
将Azure移动服务替换为Azure移动应用程序。您可以在新的Azure portal 上找到移动应用程序代码与移动服务非常相似。 这里是教程如何开始:Create a Windows app
顺便说一句,你很容易拥有SQLite数据库并与云SQL Server数据库同步数据。
Offline Data Sync in Azure Mobile Apps
创建移动应用程序后,您将有可能下载客户端应用程序示例。但它适用于8.1和C#。 如果不久:
从的NuGet Microsoft.Azure.Mobile.Client安装
在App.xaml.cs添加
using Microsoft.WindowsAzure.MobileServices;
而且声明:
public static MobileServiceClient MobileService =
new MobileServiceClient("https://mydemomobservice.azurewebsites.net");
而且还它需要创建带数据库结构的类:
public class mydemotable
{
public string Id { get; set; }
[JsonProperty(PropertyName = "surname")]
public string surname { get; set; }
[JsonProperty(PropertyName = "salary")]
public int salary { get; set; }
}
字段ID是必需的。
在这之后,你可以这样做:当你创建一个Azure的应用服务移动应用
mydemotable item = new mydemotable
{
surname = "Skywalker",
salary = 10000
};
await App.MobileService.GetTable<mydemotable>().InsertAsync(item);
感谢您的信息。这绝对是给我一个出发点。 – SpecWin
,后端将暴露的OData的V3(有一些改进)。您需要添加一个额外的标头(请参阅https://azure.microsoft.com/en-us/documentation/articles/app-service-mobile-client-and-server-versioning/),并处理脱机同步所需的细节(例如Id字段是字符串GUID,而不是自动递增的int)。但是,您应该只能使用OData v3客户端。查看https://github.com/OData/odatacpp-client作为一个可以作为起点的项目。
包装是一种选择,但您应该能够像使用其他数据库一样使用连接字符串和密码连接到数据库。我会看看这个:[链接](https://msdn.microsoft.com/en-gb/magazine/dn630643.aspx)和这[链接](http://stackoverflow.com/questions/35556143/ c-connection-to-azure-sql-or-microsoft-sql-server) – SammyG
谢谢SammyG,我曾看过那篇文章,但不幸的是他指的是桌面应用程序。 ODBC API不适用于UWP应用程序。 – SpecWin
经过进一步研究后,似乎微软不想直接使用Windows应用商店应用UWP进行连接。他们建议像SQLite一样使用本地存储并通过REST API同步数据。这是一种更好的安全方法,因为它意味着安全性可以进一步加强,例如,使数据库不公开面临。另一个原因他们这样做是为了让你使用更多的天蓝色服务。例如SDK的虚拟机,服务。为了获得最佳设计,使用REST(OData服务),意味着它需要更长的时间才能实现。总之,似乎微软故意离开了这个ou – SammyG