Azure脱机同步-未捕获异常
我正在使用Xamarin Forms和Azure,试图在我的移动应用程序中实现离线同步,以存储Azure脱机同步-未捕获异常,azure,xamarin,xamarin.forms,offline-caching,Azure,Xamarin,Xamarin.forms,Offline Caching,我正在使用Xamarin Forms和Azure,试图在我的移动应用程序中实现离线同步,以存储机器对象的列表 在我处理脱机同步的类中,我有一个名为Initialize()的函数,用于在手机或平板电脑中设置本地数据库以进行脱机同步 public MobileServiceClient client { get; set; } IMobileServiceSyncTable<Machine> machineTable; public async Task Ini
机器
对象的列表
在我处理脱机同步的类中,我有一个名为Initialize()
的函数,用于在手机或平板电脑中设置本地数据库以进行脱机同步
public MobileServiceClient client { get; set; }
IMobileServiceSyncTable<Machine> machineTable;
public async Task Initialize()
{
if (client?.SyncContext?.IsInitialized ?? false)
{
return;
}
var azureUrl = "http://mycoolwebsite.azurewebsites.net";
//Create our client
client = new MobileServiceClient(azureUrl);
//InitialzeDatabase for path
var path = "mylocaldb.db";
path = Path.Combine(MobileServiceClient.DefaultDatabasePath, path);
//setup our local sqlite store and intialize our table
var store = new MobileServiceSQLiteStore(path);
//Define table
store.DefineTable<Machine>();
//Initialize SyncContext -- Populate the local DB!
await client.SyncContext.InitializeAsync(store, new MobileServiceSyncHandler()); //<-- EXCEPTION HERE
machineTable = client.GetSyncTable<Machine>();
// table.PurgeAsync();
}
publicmobileserviceclient客户端{get;set;}
IMobileServiceSyncTable机器表;
公共异步任务初始化()
{
如果(客户端?.SyncContext?.IsInitialized?false)
{
返回;
}
var azureUrl=”http://mycoolwebsite.azurewebsites.net";
//创建我们的客户
客户端=新的MobileServiceClient(azureUrl);
//为路径初始化数据库
var path=“mylocaldb.db”;
path=path.Combine(MobileServiceClient.DefaultDatabasePath,path);
//设置本地sqlite存储并初始化表
var store=新的MobileServiceSQLiteStore(路径);
//定义表
store.DefineTable();
//初始化SyncContext--填充本地数据库!
等待client.SyncContext.InitializeAsync(store,new MobileServiceSyncHandler());//使用时发现:
await client.SyncContext.InitializeAsync(store, new MobileServiceSyncHandler());
machineTable = client.GetSyncTable<Machine>();
wait client.SyncContext.InitializeAsync(存储,新的MobileServiceSyncHandler());
machineTable=client.GetSyncTable();
我需要在我的Machine
对象中有一个public string Id{get;set;}
变量,因为构建本地数据库的代码需要这个字段。如果将它添加到文档的某个地方,那就太好了!对于脱机同步,您可以遵循adrian hall的书。