新しいエンティティを作成し、次のように保存するとします。
UserReport report = new UserReport() {//set the props}
manager.SaveUserReport(report)
Public UserReport SaveUserReport(UserReport report)
{
using(var context = new ReportDatabase())
{
context.UserReports.AdObject(report);
context.SaveChanges();
}
return report;
}
ここまでは順調ですね
次に、保存したレポートを読み返します
savedReport = manager.GetUserReports(new int[] {report.Id}).FirstOrDefault();
Public List<UserReport> GetUserReports(IEnumerable<int> reportIds)
{
using (var context = new ReportDatabase())
{
var reports = from UserReport in context.UserReports
where reportIds.Contains(userReport.Id)
select userReport;
return visibleReports.ToList();
}
}
savedReport は添付された UserReport になりました
UserReport オブジェクトには、Columns のコレクションが関連付けられています。
アタッチされた列のセットを別のセット (データベースに既に存在する) に置き換えたいと考えています。
savedReport.Columns = newColumnCollection
これは、コレクションが既に EntityCollection に設定されているため、「タイプ UserReport_etc のプロパティ列」を設定できません」というエラーで失敗します。
この記事を見てきました: 問題は同じですが、その解決策を使用できません。
これに取り組む正しい方法は何ですか?