エンティティ 'Reserve'、 'ReservesUsers'、およびデフォルト 'ApplicationUser'があります。関連するエンティティをビューに渡す
public class Reserve
{
public int ID { get; set; }
public string Begin { get; set; }
public string End { get; set; }
public string Date { get; set; }
public string Status { get; set; } //free , reserved, confirmed, canceled
public DateTime LastUpdate { get; set; }
public ICollection<ReserveUser> ReservesUsers { get; set; }
}
public class ReserveUser
{
[Key]
public int Id { get; set; }
public string UserId { get; set; }
[ForeignKey("UserId")]
public virtual ApplicationUser User { get; set; }
public int ReserveId { get; set; }
[ForeignKey("ReserveId")]
public Reserve Reserve { get; set; }
}
public class ApplicationUser : IdentityUser
{
public bool IsProfessional { get; set; }
public ICollection<ReserveUser> ReservesUsers { get; set; }
}
私は、ユーザーとビューの準備を必要とするように、私はそれを得る:
var usersByReserve = _context.Reserves
.Where(m => m.ID == id)
.Include(ru => ru.ReservesUsers)
.ThenInclude(ap => ap.User)
.ToList();
は、どのように私はビューに送信し、それをアクセスすることができます。
は、私が試した:return View(usersByReserve);
と働いていませんでした。
要求の処理中に未処理の例外が発生しました。
InvalidOperationException:ViewDataDictionaryに渡されたモデルアイテムが 'System.Collections.Generic.List`1 [Reservation.Models.Reserve]'タイプですが、このViewDataDictionaryインスタンスには 'Reservation.Models'タイプのモデルアイテムが必要です。予備 '。 EnsureCompatible
は機能しませんでしたか?エラーが発生していますか?あなたのビューコードはどのように見えますか? – Shyju