我想在模板中提供的DataObject
之上向Azure移动应用添加我自己的TodoItem
。这就是我所做的:
添加新的DataObject
:
public class Digests : EntityData
{
public string Title { get; set; }
public string ImageURI { get; set; }
}
创建名为DigestsController.cs
将public DbSet<Digests> DigestItems { get; set; }
添加到我的AppContext.cs
。这应该创建将保存Digests
项的表。
将context.Set<Digests>().Add(new Digests { Id = "2016", Title = "Test", ImageURI = "someUriHere" });
添加到Startup.MobileApp.cs
课程Seed
下的AppInitializer
。这应该在我的Digests
表格中播放一行数据。
根据this question以及他解决问题的方式,这应该有效!但每当我尝试从我的客户端应用程序下载数据时:
public static MobileServiceClient MobileService = new MobileServiceClient("http://app.azurewebsites.net/");
IMobileServiceTable<Digests> Digests = App.MobileService.GetTable<Digests>();
Weeks = await Digests.ToListAsync();
或者使用我可以从Azure门户下载的模板应用程序下载数据:
private MobileServiceCollection<TodoItem, TodoItem> items;
private IMobileServiceTable<TodoItem> todoTable = App.MobileService.GetTable<TodoItem>();
items = await todoTable.Where(todoItem => todoItem.Complete == false).ToCollectionAsync();
我明白了:
此外,当我进入SQL Server Management Studio时,什么也没有!没有TodoItems
表(应该来自模板代码)和没有Digests
表。
我在这里缺少什么?
答案 0 :(得分:1)
您引用的问题(Extending base mobile azure sample (.net backend))适用于Azure移动服务。相同的代码可能不适用于Azure移动应用程序,因为服务器SDK已经进行了很多更改。
相反,创建新表控制器的最简单方法是使用Visual Studio中的工具。安装最新的Azure SDK。
添加您的新数据类,继承自EntityData
。建立项目。然后,右键单击您的项目,然后选择添加 - &gt;新的脚手架项目。选择 Azure移动应用程序表控制器。请参阅下面的屏幕截图。
请注意,发布项目不会创建数据库表,因为Entity Framework Code First会在首次访问数据库时创建数据库。请参阅Mobile Apps Wiki中的The server database is not created。
答案 1 :(得分:0)
public static MobileServiceClient MobileService = new MobileServiceClient(&#34; http://app.azurewebsites.net/&#34;);
从您提供的代码中。根据我的理解,您将移动应用程序部署到Azure Web应用程序。我认为这不是一个好的选择。我建议您将应用程序部署到Mobile Service,然后尝试以下代码:
public static MobileServiceClient MobileService = new MobileServiceClient(
"https://<mobile service name>.azure-mobile.net/",
"<mobile service key>" //we could find this key in Azure portal Mobile service -> management key
);
如果您的数据模型发生了变化,请参阅https://azure.microsoft.com/en-us/documentation/articles/mobile-services-dotnet-backend-how-to-use-code-first-migrations/#seeding更多详情
最诚挚的问候,
Jambor
答案 2 :(得分:0)
这对我有用: