.Net/EFコアで問題が発生しました。ビューモデルのコンストラクタのselectステートメントがで次のエラーを返しています。:Property 'System.String Name' is not defined for type 'Microsoft.EntityFrameworkCore.Storage.ValueBuffer'
ランタイム。Linqクエリのランタイムエラー
問題の原因と思われる行をコメントアウトし、それを絞り込んだりしていますが、私がやっていることに何が間違っているのか分かりません。エラーを引き起こして表現され、次の
:
playerholder = players.Select(m => new PlayerListItem_PDMI
{
PlayerID = m.PlayerID,
FirstName = m.FirstName,
LastName = m.LastName,
Rating = m.Rating,
Assigned = m.TeamAssignments.Where(n => n.Team.League == league && n.SeasonID == SeasonID).Count() > 0,
TeamName = (m.TeamAssignments.Where(n => n.Team.League == league && n.SeasonID == SeasonID).Count() > 0 ? m.TeamAssignments.Where(n => n.Team.League == league && n.SeasonID == SeasonID).First().Team.Name : "Not Assigned")
}).ToList();
および特定の行は、私がここで行方不明です何
TeamName = (m.TeamAssignments.Where(n => n.Team.League == league && n.SeasonID == SeasonID).Count() > 0 ? m.TeamAssignments.Where(n => n.Team.League == league && n.SeasonID == SeasonID).First().Team.Name : "Not Assigned")
のですか?
注:照会されているデータベースは完全に空です。レコードのチェックがfalseを返すと、三元表現の戻りが
編集「割り当てなし」にする必要があります。
次のようにTeamAssignmentクラスは次のとおりです。
public class TeamAssignment : IModel
{
public TeamAssignment()
{
}
public TeamAssignment(WWAHLContext db)
{
Season = db.Seasons.Last();
}
[Key]
public int ID { get; set; }
public int PlayerID { get; set; }
public int SeasonID { get; set; }
public int TeamID { get; set; }
public int PlayerNumber { get; set; }
public Position Position { get; set; }
[ForeignKey("PlayerID")]
public virtual Player Player { get; set; }
[ForeignKey("TeamID")]
public virtual Team Team { get; set; }
[ForeignKey("SeasonID")]
public virtual Season Season { get; set; }
}
とクラスがあるチームこれは:
public class Team : IModel
{
public int TeamID { get; set; }
public int SeasonID { get; set; }
public League League { get; set; }
public string Name { get; set; }
public virtual TeamStats TeamStats { get; set; }
public virtual TeamCarousel Carousel { get; set; }
public virtual ICollection<GameDetails> Games { get; set; }
public virtual ICollection<CurrentTeam> CurrentPlayers { get; set; }
[NotMapped]
public virtual IEnumerable<Penalty> Penalties => Games.SelectMany(m => m.Penalties);
}
チームクラスを表示する –
これは実行時エラーですか? – user3185569
@ user3185569はい、そうです。 – Ceshion