1

MVC で Entity Framework ビューを使用しているときに、コードで非常に特殊な問題が発生しています。テーブルを使用している場合は問題がないため、ビューの使用に問題があると思われるだけです。

私のビューは LoadAuditStats_Report と呼ばれ、インデックスのコントローラー コードは次のとおりです。

    private readonly RepositoryDBContext _repository = new RepositoryDBContext();
    public ActionResult Index()
    {
        var stats = _repository.LoadAuditStats_Report;

        return View(stats);
    }

ビュー内のデータの例は次のとおりです。

ここに画像の説明を入力

コントローラーからの例の結果の出力を調べると、3 つのレコードが取得されますが、3 つのレコードすべてのデータは最初のレコードの繰り返しになります。したがって、この場合、3 つのレコードすべてが PackageAuditId 700 の同じフィールド値を持つことになります。

テーブルを使用しているときにこの問題を見たことがないので、これは本当に奇妙です。そのため、ビューに関連するときに MVC3 とインターフェイスする EntityFramework4 に問題があるのではないかと考えなければなりません。

EntityFramework ビューの使用を控えるべきですか、それとも、それらを使用する際に考慮すべき追加事項はありますか?

4

1 に答える 1

2

ビューには、EF の主キーもあります。キーが実際には一意ではないフィールドで構成されている場合、結果セットに重複した行が含まれる可能性があります。したがって、ビューを調査し、その行を一意に識別する列を決定し、それらの列を主キーとして使用するように EF に指示する必要があります。

于 2012-11-16T15:41:04.373 に答える