【发布时间】:2017-05-11 15:16:54
【问题描述】:
我正在使用 Azure Mobile App 开发后端 API 以使用 SQL Server 数据库,因为我想使用名为 Offline Sync 的内置功能在我的移动客户端应用程序中以离线模式工作。
所以,我使用TableController 创建了 API 端点,
public class TodoItemController : TableController<TodoItem>
{
protected override void Initialize(HttpControllerContext controllerContext)
{
base.Initialize(controllerContext);
SyncMobiAppContext context = new SyncMobiAppContext();
DomainManager = new EntityDomainManager<TodoItem>(context, Request);
}
}
离线同步模式在移动客户端中完美运行。但是当我使用[MobileAppController] 属性(从技术上讲来自TableController 的derived)来创建API 端点时,
// Use the MobileAppController attribute for each ApiController you want to use
// from your mobile clients
[MobileAppController]
public class CustomerController : ApiController
{
// GET api/<controller>
public IEnumerable<string> Get()
{
using (var context = new SyncMobiDBEntities())
{
return context.Customers.Select(x => x.FirstName).ToArray();
}
}
}
离线同步不起作用。
有什么方法可以使用[MobileAppController] 属性 API 在客户端 SDK 中实现或支持离线同步功能?
【问题讨论】:
标签: c# azure asp.net-web-api azure-mobile-services