問題タブ [viewdata]

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.

0 投票する
1 に答える
976 参照

model-view-controller - ViewData のビューに渡された SelectList からドロップダウンリストの値が設定されない

オフィスの場所 (テキスト) と住所 (値) のドロップダウンリストを入力しようとしています。ページを表示した後にブラウザーでページ ソースを表示すると、選択 (ドロップダウンリスト) オプションの値がすべて "" であることがわかります。これが私のコードです。SelectList のデータを取得するために、LinqToSql データ コンテキスト呼び出しを使用しています。デバッガーで、呼び出しから返されたリストに、実際に必要な住所とオフィスの場所が含まれていることがわかります。私のモデルのデータコンテキストコード:

私のコントローラーコード:

私のビュー コード: <%= Html.DropDownList("locations", (SelectList)ViewData["OfficeLocations"])%>

0 投票する
4 に答える
429 参照

asp.net-mvc - asp.net-mvc の厳密に型指定されたビューデータはどこに配置すればよいですか?

ビューデータ クラスをコントローラー内にネストしてきましたが、その数が増えるにつれて、これが良いアイデアかどうかを自問し始めています。繰り返しになりますが、/Views および /Controllers ディレクトリをこれらのもので汚染することについては、何かがおかしいようです。

ここで見逃している規則はありますか? おそらく/ViewDataディレクトリですか?idk、viewdata クラスに適した場所はどこですか?

0 投票する
6 に答える
2708 参照

asp.net-mvc - 厳密に型指定された部分ビュー MVC RC1

ViewData.Model を部分ビューに渡す際に問題が発生しました。結果クエリと同一視しても、常にデフォルトで null になります。モデルが null であるため、厳密に型指定されたデータにアクセスできません。私の現在のコードはこれです、

ビューページ

UserControl - ヘッダー

ユーザーコントロール - テスト

コントローラ

0 投票する
3 に答える
291 参照

asp.net-mvc - MS MVC-どういうわけか、すべてのビューに対して強く型付けされたViewData / Modelをグローバルに入力できますか?

MVCアプリケーションのすべてのビューに対して、ログに記録されたユーザーのインスタンス(または、まだ誰もログに記録されていない場合はnull)を提供したいと思います。InvokeActionをオーバーライドし、ログに記録されたユーザーインスタンスをViewData(controllerContext.Controller.ViewData ["LoggedUser"] = xxx)に提供する独自のControllerActionInvokerクラスをすでに正常に実装しました。問題は、アプリケーション全体でログに記録されたユーザーインスタンスを渡すために、強く型付けされたモデルを使用したいということです。私は、強く型付けされたすべてのViewDataクラスの基本クラスであり、ログに記録されたユーザーインスタンスも提供するApplicationViewDataBaseクラスを用意することを考えていました。すべてのビューでログに記録されたユーザーインスタンスに簡単にアクセスできました。

ControllerActionInvoker.InvokeActionオーバーライドで達成したように、強く型付けされたグローバルに入力することは可能ですか?または、Page.Userでユーザーインスタンスを提供する方がよいでしょうか。Page.Userを使用する方がおそらくもっと巧妙だと思いますが、Userインスタンスを挿入する方法も見つかりませんでした...

0 投票する
2 に答える
5498 参照

javascript - Viewdata リストから JavaScript 配列を設定する方法の簡単な例が必要

これを行うにはもっと簡単な方法があるかもしれません。私の状況は、テキストと値を正常に入力したフォームにドロップダウンリストがあることです。また、クライアントで使用可能な db テーブルの同じテーブル行から関連する文字列値を追加する必要があるため、ユーザーがドロップダウンから選択すると、この関連データがフォームのテキスト ボックスに入力されます。私が扱っているレコードは 4 つしかないので、クライアントに保存することは大したことではありません。このデータをViewDataを介してリストとして渡し、javascript配列にロードすることを考えました。ユーザーがドロップダウンから選択すると、選択したインデックスを特定し、必要な関連データを配列から取得します。他の必要なデータにドロップダウン項目の値を既に使用しているため、サーバーに戻らずにこの関連データを取得する方法が必要です。

ありがとう、

マイク

0 投票する
6 に答える
6030 参照

asp.net-mvc - ビューデータをasp.net mvcマスターページに渡す

マスターページに保持している mvc ユーザーコントロールの asp.net mvc マスターページに ViewData を渡そうとしています。たとえば、名前のドロップダウンリストを mvc ユーザーコントロールとして作成し、それをマスターページに配置しました。

私が直面している問題は、ViewData をマスターページに渡すことです。まともな解決策があるマイクロソフトのこの記事を見つけましたが、他に「より良い」解決策があるかどうか疑問に思っていました。リンクのソリューションで気に入らない点は、新しいコントローラー クラスから継承するようにすべてのコントローラーを変更する必要があることです。

http://www.asp.net/learn/MVC/tutorial-13-cs.aspx

編集:私が見ている問題は、ViewData に依存するマスターページにユーザーコントロールを配置する場合、そのマスターページを使用するすべての単一ページにその ViewData を繰り返し含める必要があるという事実です上記のリンクの解決策が最善の解決策である可能性がありますが、他の選択肢があることを望んでいました.

0 投票する
3 に答える
126 参照

.net - CustomViewData への最良の方法は?

カスタム プロパティを横幅の ViewDataDictionary に追加する最も実用的な方法は何ですか?

簡単なケースを想定してみましょう:

最初に頭に浮かぶのは、カスタム クラスとアプリケーション ベース コントローラーでの "new" の使用です。

ビューでもカスタム ビュー データ ディクショナリを使用するには、同じプロパティを持つ対応する CustomViewPage も作成する必要があると思います。

2 番目に思い浮かぶのは、ViewDataDictionaryExtensions クラスを作成することです。

第三に、「View Model」を使用します。View Models に関する私の欠点は、少なくとも前の 2 つのオプションと比較すると、常に 1 つを作成して View に渡すことです。

本当の目標は、各アプリケーションが、そのアプリケーションの目的に適した ViewData の主要なプロパティ セットを持つようにすることです。私はディクショナリ キーに頼るのをためらう傾向があります。他の開発者が実際のプロパティを使用して、設定するデータを知ることができると便利です。さらに、キーは簡単にスペルを間違えることがあります。

3 つの方法はすべて、仕事を成し遂げます。他の人は何をしましたか?

0 投票する
4 に答える
3909 参照

c# - C#MVCでの繰り返しVIewDataの集中化

ユーザーが私のアプリケーションにログインするとき、アプリケーション全体で彼の名前を表示したいと思います。asp.netMVCフレームワークを使用しています。しかし、私が望まないのは、すべてのコントローラーに次のようなものを入れなければならないということです。

これはあなたが自分自身を繰り返さないかもしれないからです。(これは、オブジェクト指向プログラミングのDRY [Do n't Repeat Yourself]の原則だと思います。)ViewData["User"]は私のマスターページにあります。だから私の質問は、私のViewData["User"]を1か所で処理するためのきちんとした方法は何ですか?

0 投票する
1 に答える
1302 参照

asp.net-mvc - MVCは配列を使用して強く型付けされたviewdata

次のような強く型付けされたViewDataを使用するビューがあります。

コントローラ:

そして、ビューは次のようになります。

わかりました。MyViewDataを作成してLoadDummyData()を呼び出し、それをビューで使用すると、TextBoxにデータが表示されません。

面白いことに、TextBoxにデータを入力すると、Postコントローラーで返されたMyViewDataにデータが入力されます。

私は何が間違っているのですか?これはMVCの新しいバージョンで修正されましたか?私はRC1を持っていると思います。

キース

アップデート1

これ

うまく動作します。私の質問は、これが必要だと思います

同じように動作しますか?