ユーザーと曲の 2 つのテーブルがあります。UserID 列で両方を結合し、リストをビューに返す必要があります。匿名型を書き込もうとしましたが、次のエラーが発生します。
「LINQ to Entities では、パラメーターなしのコンストラクターと初期化子のみがサポートされています。」
参加してリストに戻るにはどうすればよいですか?
public class User
{
[Key]
public virtual Guid UserId { get; set; }
[Required]
public virtual String Username { get; set; }
[Required]
public virtual String Email { get; set; }
[Required, DataType(DataType.Password)]
public virtual String Password { get; set; }
}
public class Song
{
public int SongId { get; set; }
public virtual Guid UserId { get; set; }
public string SongTitle { get; set; }
}
私はここにこのような方法を実装しようとしました:
私が最終的に得たクエリは次のとおりです。
var query = from u in db.Users
join s in db.Songs
on u.UserId equals s.UserId
select new HomeSongList(s.SongId, s.UserId, u.Username);
return View(query.ToList());