【发布时间】:2016-07-21 21:51:12
【问题描述】:
我在 Azure 中创建了一个新的移动应用程序,并下载了启动项目并发布到 Azure。
默认路由/表完美运行,但每当我尝试访问任何新表时,我都会收到“您要查找的资源已被删除、更改名称或暂时不可用。”
我已将新表添加到 dbContext 并发布到 Azure。当我通过 SQL Management Studio 查看数据库时,它们显示在表列表中,因此正在创建表。
public myAppContext() : base(connectionStringName)
{
}
public DbSet<Member> Members { get; set; }
public DbSet<ContactMethodType> ContactMethodTypes { get; set; }
public DbSet<GenderType> GenderTypes { get; set; }
public DbSet<Group> Groups { get; set; }
public DbSet<MemberContribution> MemberContributions {get;set;}
public DbSet<Invitation> Invitations { get; set; }
我已经为与原始示例控制器匹配的新表添加了控制器,但似乎只有该初始路由运行。
using System.Linq;
using System.Threading.Tasks;
using System.Web.Http;
using System.Web.Http.Controllers;
using System.Web.Http.OData;
using Microsoft.Azure.Mobile.Server;
using myApp.DataObjects;
using myApp.Models;
namespace myApp.Controllers
{
public class InvitationsController : TableController<Invitation>
{
protected override void Initialize(HttpControllerContext controllerContext)
{
base.Initialize(controllerContext);
myAppContext context = new myAppContext();
DomainManager = new EntityDomainManager<Invitation>(context, Request);
}
// GET tables/Invitation
public IQueryable<Invitation> GetAllInvitations()
{
return Query();
}
// GET tables/Invitation/48D68C86-6EA6-4C25-AA33-223FC9A27959
public SingleResult<Invitation> GetInvitation(string id)
{
return Lookup(id);
}
// PATCH tables/Invitation/48D68C86-6EA6-4C25-AA33-223FC9A27959
public Task<Invitation> PatchInvitation(string id, Delta<Invitation> patch)
{
return UpdateAsync(id, patch);
}
// POST tables/Invitation
public async Task<IHttpActionResult> PostInvitation(Invitation item)
{
Invitation current = await InsertAsync(item);
return CreatedAtRoute("Tables", new { id = current.Id }, current);
}
// DELETE tables/Invitation/48D68C86-6EA6-4C25-AA33-223FC9A27959
public Task DeleteInvitation(string id)
{
return DeleteAsync(id);
}
}
}
【问题讨论】:
标签: entity-framework azure mobile xamarin