0

私はMVCゲームに少し遅れています.率直に言って、そこには非常に多くの情報があり、「正しい」キーワードを使用して答えに近づくことさえほとんど不可能です.

codesデータベースから取得してオートコンプリート リストに表示する関数があります。GetCodesこのメソッドをコントローラー間で共有したいのですが、これらcodesは他のフォームで使用されています。

これのベストMVCプラクティスは何ですか?

この関数で基本クラスを作成する方が良いですか、それともこれらのタイプのメソッドを共有するために Web API コントローラーを作成する方が良いですか?

[編集] 明確にするために、codes私が提供しているオートコンプリートは、大きな州または州の都市のリストのようなものです。これは、連邦レベルで変更が発生した場合にのみ政府によって更新される静的なリストです。

検索を実行する機能をカット/ペーストしたくないだけで、再利用可能なものを書きたいのです。現在、関数GetCodesは 1 つの Controller にあり、そのコントローラーの Action メソッドをサイトの他の部分から呼び出します。私はこれが好きではありません.ASP.NETの他の部分を使用して、より堅牢な方法でこれを達成する方法についてのアドバイスを探しています.

ありがとうございました

4

2 に答える 2

0

ビュー モデルを使用する - をロードするビュー モデル (またはビュー モデル ベース クラス) を作成するか、codesをロードするメソッドを提供してから、codesこのビュー モデルをより大きなビュー モデルのプロパティとして使用します (またはビュー モデルから継承します)。

于 2015-01-15T01:02:40.297 に答える
0

あなたが「どうするのが一番いいのか...」と言うときはいつでも、答えは常に「多くの要因に依存します」です。

お客様の設計、要件、実装、またはその他の詳細について、私たちはあまり知りません。ただし、注意すべき点がいくつかあります。

いかなる種類の分散アーキテクチャも必要ない場合、WebApi コントローラーを作成する理由はありません。

データは単にモデルの一部であるように思えます。そのため、モデル データのデータ アクセスには標準パターンを使用できます。MVC Music store や Nerd Dinner などのチュートリアルで、これを行う方法が示されます。

データがコントローラー間で共有されているからといって、それが特別なものになるわけではありません。モデルの要点は、データがどのコントローラーでも使用できるということです。

于 2015-01-15T02:07:42.333 に答える