0
私は、ユーザーテーブルにリンクされた撮影者テーブルを持つMVC 5(EF6)アプリケーションを構築しています。ユーザーロール/テーブルに基づいてテーブルレコードを返します。失敗する - linqクエリに参加します。
私は写真家を特定するために、ユーザーアカウントで役割を設定します。撮影者テーブルは、テーブルではない追加情報を保持する。私は、さまざまな種類のユーザーがシステムにアクセスしています。
撮影者の役割にあるユーザーに基づいて撮影者テーブルレコードを取得する必要があります。次の解決策がありますが、クエリ結果にアクセスしようとすると、次のエラーメッセージが表示されます。
'Microsoft.AspNet.Identity.EntityFramework.IdentityUserRole'という型の定数値を作成できません。このコンテキストでは、プリミティブ型または列挙型のみがサポートされています。いくつかの研究と@Shawnヤンからの助けを借りた後
var photogpraherRole = db.Roles.Single(r => r.Name == "photographer");
var users = photogpraherRole.Users.ToList();
var photographersList =
from photographer in db.Photographers
join user in users on photographer.User.Id equals user.UserId
orderby photographer.Priority
select photographer;
foreach (var photographer in photographersList)
{
var photographerName = photographer.User.FirstName;
}
私はあなたの2行目は、 'VARユーザー= db.Users.Where(M => m.Roles.Name == "写真家")を使用してproblem.Tryである疑いがある)ToListメソッド();' –
感謝@ショーンヤン。これは完全な解決策ではありませんでした。しかし、私は正しい方向に私を指摘した。私は以下の完全なソリューションを掲載しました。 – Andrew
こんにちは。 –