問題タブ [controller]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
model-view-controller - MVC を使用して、ビュー間の通信をどのように処理する必要がありますか? モデル間?
MVCを実装する前にMVC を適切に理解するための私の探求における 3 番目の質問:
私は2つのケースを念頭に置いています:
- プライマリ アプリケーション ウィンドウは、設定ウィンドウを起動する必要があります。(あるビューが別のビューを呼び出します。)
- アプリケーションのプライマリ モデルは、設定モデルのプロパティにアクセスする必要があります。(あるモデルが別のモデルにアクセスします。)
これらの質問は、どちらも Model-View-Controller トリプレット間の通信に関係しているという点で関連しています。これは、Google であまり議論されていないトピックです。
これを修正する明白な方法は、モデル間のトランザクションを処理し、コントローラーが互いのメソッドを呼び出せるようにする最上位の「アプリケーション」オブジェクトにすべてをラップすることです。私はこれが実装されているのを見てきましたが、それが良い考えだとは確信していません。コントローラーが複数のモデルを監視し、複数のビューに応答する可能性も見られますが、これは非常に雑然として追跡が困難になるようです。
この種のクロストークを実装する最善の方法についての提案はありますか? 非常に明白な質問のように感じますが、十分に文書化された解決策を見つけることができませんでした。
より広い意味で、この種の MVC の問題に対する典型的なアプローチを示すリンクを誰かが持っている場合は、それを見てみたいです。堅実で自明ではない参考文献を見つけるのはあまり運がありませんでした。Python での例は素敵ですが、喜んで何でも読みます。
編集1:
以下で非常に興味深いことが述べられていますが、一般的に、私が説明したアプローチに問題がある人は誰もいないようです。Vincent が説明している FrontController 設計は、すでにほとんど怠惰な形になっています。そのパターンを実装する上で問題が発生することは確かにないと思いますが、モデル間の通信に関する問題に実際に対処した人は誰もいないようです。すべての答えは、単一のモデル内のオブジェクト間の通信に対処しているようです。私は、アプリケーションの個別のコンポーネントに対して個別のモデルを維持することに関心があるので、50 の状態プロパティを 1 つのモデル クラスに詰め込みません。代わりにサブモデルとして維持する必要がありますか?
asp.net-mvc - ASP.NET MVC-ビジネスロジックはコントローラーに存在する必要がありますか?
Derik Whitakerが数日前に記事を投稿しましたが、これは私がしばらくの間興味を持っていたポイントに達しました。ビジネスロジックはコントローラーに存在する必要がありますか?
これまでに見たすべてのASP.NETMVCデモは、リポジトリアクセスとビジネスロジックをコントローラーに配置しました。そこにも検証を投げかける人もいます。これにより、コントローラーがかなり大きく肥大化します。これは本当にMVCフレームワークを使用する方法ですか?これは、多くの重複したコードとロジックがさまざまなコントローラーに分散することになると思われます。
asp.net-mvc - ASP.NET MVC で多くのフィールドを持つビューに "作成" コントローラー アクションを実装するにはどうすればよいですか?
私は ASP.NET MVC を初めて使用するので、これはばかげた質問かもしれません。
多くのパラメーターを持つアカウント オブジェクトがあります。私は、これを「ウィザード」のようなインターフェースに分割する戦略を考え出しました。このインターフェースは、最初のビジネス オブジェクトを作成するために必要なフィールドを収集する手順をユーザーに案内します。次に、ページをステップ実行して、他のオプションのパラメーターを収集します。このようにして、ユーザーは 30 個の項目を入力しなければならない 1 つのページに直面することはありません (私はおそらく数を誇張していますが、お分かりいただけると思います)。
それでも、最初のページには 10 から 12 の項目があり、登録の成功に伴う 2 から 3 のビジネス オブジェクトのすべての必須フィールドに入力する前に、ユーザーが入力する必要があります。基本的に、新規ユーザーはアカウントの取得とイベントへの登録を同時に行う必要があるため、アイテムの数が増えます。
ASP.NET MVC では、すべてのフォーム パラメーターがコントローラー メソッドのメソッド パラメーターにマップされているようです。多くのパラメーターを持つメソッドは、リファクタリングする必要があるコードの臭いと見なされることを知っているので、これを達成する別の方法があるのか 、それとも1対1のコントローラーメソッドにこだわっているのか疑問に思っています.フォーム パラメータとメソッド パラメータの間のマッピング。
この問題を解決するために Google 検索で見逃した既知のパターンはありますか?
subsonic - サブソニックコントローラー
SubSonic でのコントローラーの用途は何ですか?
java - JFrame内の複数のJPanelにアクセスするには?
私は、ディスプレイの内容にアクセスする必要JFrameがある「ディスプレイ」とボタンを含むJPanel「JTextFieldコントロール」を含む を持っています。私の問題は、原則として私が理解しているオブザーバーパターンの使用方法に関連していると思います。リスナーを配置してメッセージを更新する必要がありますが、これらを配置する場所、あるパネルから別のパネルにアクセスする方法、および必要に応じて「データモデル」クラスを導入する方法についての手がかりがありません。たとえば、コントロール パネルから のコンテンツにアクセスしたいのですが、次のように匿名アクション リスナーを使用します。JPanelJPanelJTextField
asp.net-mvc - ASP.NETMVCOutputCacheがルートURIに対して機能しない
私はASP.NETMVCを学習していて、1つの問題に悩まされています。
HomeControllerでは、IndexアクションにOutputCache属性がありますが、機能していないようです。
かなりの数分試した後、それは私がアクションにアクセスする方法によるものであることがわかりました。「http:// localhost:3573 /」からアクセスすると、outputcacheが機能しません。ただし、「http:// localhost:3575 / Home / Index」でアクセスすると、outputcacheは機能します。
デフォルトのコントローラーアクションを出力キャッシュ可能にするための回避策を知っている人はいますか?
ありがとう。
asp.net - データの「島」を表示するasp.net mvcでユーザーコントロールをどのように使用しますか?
asp.net mvc でユーザー コントロールを使用する方法を見つけようとしています。ユーザーコントロールをビューに追加する方法と、それにデータを渡す方法を知っています。私が理解できなかったのは、すべてのコントローラーでデータを取得して渡すことなく、これを行う方法です。
たとえば、サイト内のすべてのページではなく複数のページに最新の投稿を表示するユーザー コントロールがある場合、そのユーザー コントロールのデータを取得して 1 つのみからユーザー コントロールに渡すようにコントローラーを作成するにはどうすればよいですか?ユーザーコントロールが使用されているさまざまなコントローラーのそれぞれでデータを取得して渡す代わりに、Web サイトに配置しますか?
これが理にかなっているのかどうかはわかりません。複数のページに表示したいデータの「島」を処理するためのより良い方法または推奨される方法はありますか?
私は、独自のデータを取得し、それが使用されているページの残りの部分から独立してデータを表示するユーザー コントロールを作成できる Web フォームから来ています。
c# - C#-DirectX SDKでXInput名前空間を解決できない(2008年11月)
私はdirectxをいじり始めたばかりで、XInputを使用してXboxコントローラーとインターフェイスするインターネット上の記事をいくつか読んだことがあります。
c#アプリで使用しようとすると、参照する正しいアセンブリが見つからないようです。私が理解していることから、それはMicrosoft.DirectX.dll(名前空間Microsoft.DirectX.XInput)にあるはずですが、参照を追加しても解決されません。
私は何かが足りないのですか?以前のバージョンのSDKを試す必要がありますか?
asp.net-mvc - 集約ルートではないエンティティを追加するための優先 URL は?
例: Order オブジェクト (集約ルート) には、OrderLine オブジェクト (子エンティティ) のコレクションがあります。OrderLine を Order に追加する URL は何ですか? 集約ルートのコントローラーを使用することと、子エンティティ用に別のコントローラーを使用することの違いを考慮してください。
1: http://example.com/orders/add-orderline?order-id=42&product-id=12&quantity=2
また
2: http://example.com/order-lines/add?order-id=42&product-id=12&quantity=2
ありがとう!
model-view-controller - ゲーム開発において、MVC のコントローラーは純粋にユーザー入力を処理するためのものですか?
私はこれについて矛盾することを読みました。
ウィキペディアから:
コントローラー 処理し、イベント (通常はユーザー アクション) に応答し、モデルの変更を呼び出す場合があります。
紛らわしいのは典型的な言葉です。ユーザー入力だけではない場合、他に何がありますか?