このエラーについて多くの質問がありますが、なぜこのエラーが発生するのかを教えてください。そう、タイプ 'T'の定数値を作成できません。このコンテキストでは、プリミティブ型( 'Int32、String、およびGuid'など)のみがサポートされています
public class Group
{
[Key]
public int GId { get; set; }
public string GName { get; set; }
public virtual ICollection<UserProfile> Members { get; set; }
public Group()
{
Members = new HashSet<UserProfile>();
}
}
public class UserProfile
{
[Key]
public Guid UserId { get; set; }
[Required]
public string UserName { get; set; }
public virtual ICollection<Group> Groups { get; set; }
public UserProfile()
{
Groups = new HashSet<Group>();
}
}
私はすべてのグループをユーザーが参加ANS ViewBagにそれを渡したことを取得したい:
私は私のアプリでユーザーとグループを持って、彼らは多くの関係に多くの人が持っている
UserProfile user = core.Profiles.Find(1);
//ok, no error in controller, but view...
ViewBag.JoinGroups = core.Groups.Where(g => g.Members.Contains(user));
は、しかし、私はビューでエラーが発生します。
@if (ViewBag.JoinGroups != null)
{
foreach (var g in ViewBag.JoinGroups)//My issue start here
{
<p>@g.GId</p>
}
}
そして、それは言った:
'Project.Model.UserProfile'タイプの定数値を作成できません。 このコンテキストでは、 のプリミティブ型( 'Int32、String、およびGuid'など)のみがサポートされています。
私は何かを逃していますか?