wp8.1 Study16:网络之 使用Azure移动服务及利用Azure推送通知服务

时间:2023-04-02 08:50:44

一、WP8.1有关网络的API

WP8.1与其它平台的对比如下图:

wp8.1 Study16:网络之 使用Azure移动服务及利用Azure推送通知服务

二、Azure移动服务

前提:

  Azure移动服务可以让使用者的数据存放在云空间,从而方便使用者的App在不同平台上的数据共享。

1、在App添加Azure服务

wp8.1 Study16:网络之 使用Azure移动服务及利用Azure推送通知服务

wp8.1 Study16:网络之 使用Azure移动服务及利用Azure推送通知服务

(注意:如果微软账户没有添加Azure移动服务,那么你没有上图界面且不能进行下步)

  当成功添加Azure后,会自动在项目的引用下添加有关Azure移动服务客户端库,同时也会在APP.xaml.cs添加对Microsoft.WindowsAzure.MobileServ-ices.MobileServiceClient声明及创造一个实例。

Tips:可以在服务器资源管理器管理Azure服务,添加表及脚本等。

wp8.1 Study16:网络之 使用Azure移动服务及利用Azure推送通知服务

2、上传数据到Azure

 private async System.Threading.Tasks.Task InsertToDoItem()
{
IMobileServiceTable<TodoItem> TodoTable = App.TaskMasterDemoClient.GetTable<TodoItem>(); TodoItem t = new TodoItem();//TodoItem是一个datamodel
t.Title = titleTextBox.Text;
t.Description = descriptionTextBox.Text;
t.DueDate = dueDatePicker.Date.ToString();
t.AssignedTo = assignedToTextBox.Text; try
{
await TodoTable.InsertAsync(t);//把实例t的数据上传到Azure
}
catch (Exception)
{ /* TODO: Insert error handling code */ }
}

三、利用Azure移动服务推送通知

1、添加推送服务

右键解决方案---添加---推送通知

wp8.1 Study16:网络之 使用Azure移动服务及利用Azure推送通知服务

添加成功后,自动把相关文件(push.register.cs)添加到项目中

2、获取推送

  private async void GetTaskItems()
{
try
{
List<TaskItem> lstStoredTaskItems = await App.JumpStartDemoClient.GetTable<TaskItem>().ToListAsync();
lstTasks.ItemsSource = lstStoredTaskItems;
}
catch (Exception ex)
{
// TODO: Insert error handling code
}
}