問題タブ [viewbag]
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.
asp.net-mvc - ViewBagアイテムを含むMVC 3カミソリTextBoxForはエラーをスローしますか?
ViewBag から受け取ったデータを使用して、Web ページにいくつかの異なるフォームを印刷しようとしています。
最初のステートメントは機能しますが、2 番目のステートメントは機能しません。
次のことも試しました(同じエラーメッセージ):
最初のものは PItem のモデルを作成し、2 つ目は PItem 内のテキスト アイテムのテキスト ボックスを作成しようとするとエラーをスローします。モデルからではなく、ViewBag からデータを出力するために textboxfor ヘルパーを使用することは可能ですか?
asp.net-mvc - マスター ページ Asp.net MVC で viewBag を使用する
asp.net MVC を使用して Web サイトを開発しています
ウェブサイトにログインした後にユーザーの名前を表示したい。
問題は、User.Identity.Name
ユーザーの電子メールを返すことです。ユーザー名が一意ではないため、それを変更したくありません。また、他のページでメールにアクセスしたい。
マスター ページで viewBag を使用したいのですが、どこで定義すればよいかわかりません。
で定義すると、Home/controller
このアクションに対してのみ機能します。
フィルターを使用する必要がありますか?
javascript - javascript から ViewBag に値を格納する
javascriptからアクセスするViewBagに値を格納するにはどうすればよいですか?
asp.net-mvc - 基になるビューによって設定された後、ViewBag.Titleにアクセスするにはどうすればよいですか?
つまりね。MVCアクションがあり、そのアクションで、カスタムActionFilterAttributeを適用して、逆シリアル化を機能させました。ここで、私がやりたいのは、このビュー内に設定されているViewBag.Titleに基づいてヘッダーを設定することです。
ViewResultを自分でラップし、ExecuteResultをオーバーライドしようとしましたが、ViewBagは常に空です:-(。
これも可能ですか、それとも_layoutが実行されるとMVCエンジンがViewBagをリセットしますか?
更新: 私がやりたいことを明確にするために、いくつかのコードサンプルを投稿させてください。私はメールサービスを持っており、MVCビューから本文をレンダリングします。したがって、私の見解は次のようになります。
これで、次のようなアクションを持つコントローラーができました。
そのHeaders["subject"]ステートメントをResponse.Headers["subject"]=ViewBag.Title;のようにしたいと思います。そして、ビューが通常のWebページを処理していると思わせることができるようにしたいと思います。
ActionFilterAttributeを使用してOnResultExecutedをオーバーライドしようとしましたが、機能させることができませんでした。
考えられるオプションの1つは、レイアウトページで設定し、特定の基準に基づいて実際に使用するレイアウトを決定することです。そうすれば、Reponseを自分のビューから遠ざけることができますが、かなりクリーンにすることができます。どう思いますか?
ありがとう、Anže
asp.net-mvc-3 - ViewBagではなくView()を介してデータコンテキストクラスを渡すのはなぜですか?
コントローラがあり、インデックス ページがある場合:
を使用する利点は@model IEnumerable<Movie>
何ですか? ViewBag.Movies
Controller で定義してそれを index ページで使用できないのはなぜですか?
asp.net - コントローラから@Html.ActionLinkの動的タイトルを設定するにはどうすればよいですか?
私は持っています
今、私はコントローラーから各IDを設定したい
例えば:
asp.net-mvc-3 - ドロップダウンリストでアイテムをアルファベット順に並べ替える必要があります
ドロップダウンリストのアイテムをアルファベット順に注文する必要がある「問題」は次のとおりです...
これが私の見解です
これがコントローラーのビューバッグです...
何か案は???ありがとう...
asp.net-mvc - Error.cshtml ビューのフィルターによって ViewBag に配置されたデータを使用するにはどうすればよいですか?
共有 _Layout.cshtml ファイル内のすべてのビューで使用するために、いくつかの共通情報を ViewBag に配置する役割を担うアクション フィルターがあります。
共有の _Layout.cshtml ファイルでは、ViewBag に入れられた情報を使用します。
コントローラー アクションの処理中に例外が発生した場合、標準の HandleErrorAttribute は共有の Error.cshtml ビューを表示する必要があります。これは、上記のアクション フィルターを導入して _Layout.cshtml で ViewBag からの新しい値の使用を開始する前に機能していました。これで、カスタムの Error.cshtml ビューではなく、標準の ASP.Net ランタイム エラー ページが表示されます。
エラー ビューのレンダリング中に、_Layout.cshtml で ViewBag.ProductInfo.Name を使用すると、RuntimeBinderException (「null 参照でランタイム バインディングを実行できません」) がスローされるという事実までこれを追跡しました。
元の例外がスローされる前にアクション フィルターが ViewBag の値を正常に設定したにもかかわらず、Error.cshtml ビューをレンダリングするときに空の ViewBag を持つ新しいコンテキストが使用されているようです。
アクション フィルターによって作成されたデータをカスタム エラー ビューで使用できるようにする方法はありますか?
c# - C#MVCモデルとビューバッグ
ページに人物Aのリストと人物Bのリストがあるとします。そして、これら2つはL2Sの別個のクラスであり、2つの異なるテーブルを表します。したがって、次のように単一のモデルを渡すことはできません。
したがって、私は従うべき3つのオプションがあると思います。
- 1つ目は、ページを部分ビューに分割して、モデルを
RenderAction
ヘルパーに渡すことができるようにすることです。これらの部分的なビューは一度だけ使用するので、このオプションは私には魅力的ではないようです。 - 2番目のオプションは、強く型付けされたモデルを好むため、使用したくないViewBagsを使用することです。
- 最後に、これから使用しようとしましたが、使用する前に質問したかったのは、次のようなモデルを作成することです。
ModelMyPage.cs
MyController.cs
そして、あなたはその考えを思いついた。これは私のタスクを達成するための有効な方法ですか、それとも私が望むことを行うためのより良いc#の方法がありますか?
asp.net-mvc-3 - カスタムVirtualPathProvider(ASHXソース)からかみそりビューをロードするときの奇妙な動作
カスタムVirtualPathProviderを介してデータをロードすると、奇妙な動作が発生します。このビューをレイアウトとして使用しようとしていることを言及することが重要かもしれません。
カスタム(ダミー)CacheDependencyも実装しました
現在、機能しないものが2つあります。まず、ロードされたすべてのビューがキャッシュされ、次に、ファイル内のコード(@ Html.ActionLink ...など)が機能せず、「アセンブリがありません」というエラーが表示されます。
これらの2つの問題を解決する方法を誰かが考えていますか?
2番目の問題(リンク)の解決策はすでにありますが、FileExistsメソッド内でこの問題をどのように解決できるかは実際にはわかりません。
ありがとうございました!
更新:エラーメッセージの画像