同様の問題があり、ObjectSetのマージオプションを変更することで解決しました。例:
using (TargetDBDataContext db = new TargetDBDataContext())
{
db.SomeView.MergeOption = System.Data.Objects.MergeOption.NoTracking;
return db. SomeView.ToList();
}
エンティティフレームワーク(EF)は、主キーが重複しているか、主キーがまったくないビューを正しく処理していないようです。したがって、EFが等しいと見なしている行が2つある場合、EFは最初の行を適切にロードしますが、2番目の行はすでにロードされていると見なすため、ロードしません。