私のAzureアプリケーション(モバイル)サービスで問題が発生している(問題がある場合)。私は、次のしているEntityDataオブジェクト:も作成されているMSSQL DBでAzureアプリケーション(モバイル)サービスがクラスのクラスタイプのプロパティを返さない
public class User : EntityData
{
public string Name { get; set; }
public string Surname { get; set; }
public string Username { get; set; }
public string Password { get; set; }
//foreign key to Role
public Role Role { get; set; }
public List<Appointment> appointments { get; set; }
public new string Id { get; set; }
public new DateTimeOffset? CreatedAt { get; set; }
public new DateTimeOffset? UpdatedAt { get; set; }
public new byte[] Version { get; set; }
}
テーブル: "を含む" という
public class Role : EntityData
{
public string RoleCode { get; set; }
public string RoleName { get; set; }
public List<User> Users { get; set; }
public new string Id { get; set; }
public new DateTimeOffset? CreatedAt { get; set; }
public new DateTimeOffset? UpdatedAt { get; set; }
public new byte[] Version { get; set; }
}
...とクラスは、前の(役割はユーザーの外部キーです) :
しかし、私はテーブルコントローラ使用してすべてのユーザーを返すようにしてみてください。
public IQueryable<User> GetAllUser()
{
return Query();
}
を...それは、そのユーザの何の役割がない私にすべてのユーザーを返しますが、:
{
"deleted": false,
"version": "AAAAAAABQJY=",
"updatedAt": "2016-09-24T14:51:06.126Z",
"createdAt": "2016-10-11T19:43:12.165Z",
"id": "8d5a1403-e0a1-4a69-b32d-708b3a84b260",
"password": "passwordUsera",
"username": "korisnik",
"surname": "Rafailovic",
"name": "Marija"
}
すべて他のプロパティは存在しますが、ロールはありません!クエリにインクルードを使用しようとしましたが、役に立たなかった...
なぜこのようなことが起こり、どのようにすべてのユーザーにロールを含めることができますか?私はカスタムコントローラとストアドプロシージャを使用してそれを行ったが、それは素晴らしい解決策ではない...
あなたは 'Include'をどのように使いましたか? – Sampath
この 'Query()'は何ですか? – Sampath
Query() - バックエンドストアを照会するためのヘルパーメソッドを提供します。すべてのテーブルコントローラに対して、必要なエンティティ(コントローラがフォーカスされているエンティティ)のすべての項目を返します。私はそれを使用して変更しようとしました: "return Query()。Include(x => x.Role);"しかし、それは助けにはなりません... – Nemanja