私は ASPNET と MVC 4 にまったく慣れていないので、これは簡単な質問かもしれません。ただし、適切にグーグルで答えを見つけることができませんでした。単純に販売情報を表示したいのですが、表示するだけで済みます。基になるテーブルから挿入、更新、または削除する必要はありません。
データを取得する必要がある SQL Server テーブルは、CurrentSales、SalesPlans、AverageSales の 3 つです。このための VIEW を作成し、一意のクラスター化インデックスを配置しました。いくつかの外部結合が含まれていますが、ありそうもない NULL 値を処理するロジックがあります。
MODELS に移動し、新しい ADO.NET Entity Data Model を追加して、ビューをモデルに追加します。戻ってきて、「テーブル/ビュー 'vw_FullView' には主キーが定義されていません。キーは推測され、定義は読み取り専用のテーブル/ビューとして作成されました。」と表示されます。このモデルとエンティティからコントローラー クラスを作成すると、Web サイトを読み込んだときにビューにデータが表示されません。
ただし、モデル テーブルとして機能する適切な主キーを持つ完全に空のテーブルを作成し、必要なデータを取得するために (関数のインポートとして) ストアド プロシージャを使用すると、すべてが正常に機能します。
これは明らかに、これを処理する正しい方法ではありません。ビューから強く型付けされたモデルを作成する方法はありますか? この空白のテーブルでシステムを「だます」必要があるのではなく、ASP.NET の Controller オブジェクトと View オブジェクトをモデルの SQL ビューから適切に自動生成することをお勧めします。
よろしくお願いします。