【问题标题】:How to get related Entities with azure mobile app Tablecontroller如何使用 azure 移动应用 Tablecontroller 获取相关实体
【发布时间】:2016-12-22 11:05:05
【问题描述】:

您好,我正在尝试使用表控制器获取相关实体。

这是我的成员类,它有一个订阅集合

public class Member : EntityData
    {
        public string FirstName { get; set; }
        public string LastName { get; set; }
        public string Address { get; set; }
        public ICollection<Subscription> Subscriptions { get; set; }


    }

这是相关实体是订阅

public class Subscription : EntityData
    {
        public string MemberId { get; set; }
        public string ShopItemId { get; set; }
        public Member Member { get; set; }
        public ShopItem ShopItem { get; set; }
        public int Quantity { get; set; }
    }

如何修改

public class MemberController : TableController<Member>
    {
        protected override void Initialize(HttpControllerContext controllerContext)
        {
            base.Initialize(controllerContext);
            ScoreContraceptionContext context = new ScoreContraceptionContext();
            DomainManager = new EntityDomainManager<Member>(context, Request);
        }

        // GET tables/Member
        public IQueryable<Member> GetAllMember()
        {
            return Query(); 
        }

        // GET tables/Member/48D68C86-6EA6-4C25-AA33-223FC9A27959
        public SingleResult<Member> GetMember(string id)
        {
            return Lookup(id);
        }

        // PATCH tables/Member/48D68C86-6EA6-4C25-AA33-223FC9A27959
        public Task<Member> PatchMember(string id, Delta<Member> patch)
        {
             return UpdateAsync(id, patch);
        }

        // POST tables/Member
        public async Task<IHttpActionResult> PostMember(Member item)
        {
            Member current = await InsertAsync(item);
            return CreatedAtRoute("Tables", new { id = current.Id }, current);
        }

        // DELETE tables/Member/48D68C86-6EA6-4C25-AA33-223FC9A27959
        public Task DeleteMember(string id)
        {
             return DeleteAsync(id);
        }
    }

要搜索成员类的附加属性?

获取表/成员当前返回

[{"deleted":false,"updatedAt":"2016-12-02T17:17:06.447Z","createdAt":"2016-12-02T17:17:06.447Z","version":"AAAAAAAACA4=","id":"DemoUser1","address":"Some place","lastName":"Doe","firstName":"John"},{"deleted":false,"updatedAt":"2016-12-02T17:17:06.448Z","createdAt":"2016-12-02T17:17:06.448Z","version":"AAAAAAAACBA=","id":"DemoUser2","address":"Some other place","lastName":"Foster","firstName":"Jane"},{"deleted":false,"updatedAt":"2016-12-02T17:17:06.448Z","createdAt":"2016-12-02T17:17:06.448Z","version":"AAAAAAAACBI=","id":"DemoUser3","address":"#1 Galgamar st, Gibralter","lastName":"Shamlah","firstName":"Quarin"}]

我希望结果还包括用户拥有的订阅。

【问题讨论】:

    标签: c# entity-framework azure


    【解决方案1】:

    移动应用表关系比 Asp.Net 复杂得多。 Azure 移动应用客户端 SDK 目前不支持 $expand,我们需要在服务器上做一些事情。根据您的描述,您想做一对多的关系。对于这种情况,我建议您尝试this article

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多