問題タブ [asp.net-mvc-views]

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 に答える
1566 参照

c# - ASP.NET MVC の 1 つのビューに複数追加

モデルを提供しながら、同じタイプの複数のアイテムを一度に単一のビューに追加しようとしています。

@model List<Item>

ビューの場合、ポストバックすると、フォームデータが正しく送信されても​​モデルがnullになりますが、何らかの理由でマッピングが行われません。

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

c# - ビュー内から発信者名を取得する

を使用してビューを呼び出しています

@Html.EditorFor(m => Model.FileListBefore)

ビュー内から「FileListBefore」という名前を取得したいと思います。どうやってやるの?

編集(詳細):

「EditorFor(m => Model.FileListBefore)」は、独自のサブビューを使用します。そのサブビューで、このビューを呼び出したプロパティの名前を取得したいと考えています。

なんで?呼んでるから

@Html.EditorFor(m => Model.FileListBefore)

@Html.EditorFor(m => Model.FileListAfter)

「FileListBefore」と「FileListAfter」は同じタイプの「FileList」(私自身のクラス) であり、同じサブビューを呼び出します。サブビュー内で呼び出し名 (「FileListBefore」と「FileListAfter」) を取得したいのは、それらを識別して追加したいので、div の「id」値を追加するためです。

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

c# - コレクション プロパティを使用してビューを挿入

Person クラスと Contact クラスがあります。人は多くの連絡先を持つことができます。

コントローラー

PersonCreateModel :

ビュー:

私が達成しようとしているのは、ユーザーが最終的に [作成] をクリックする前に、複数の連絡先を Person に追加できることです。

2 つの質問があります。

1- これは最善の方法ですか?、javascript や jquery を使用するなど、これを行うためのより簡単で短い方法はありませんか?

2- AddContact をクリックすると、最初はうまく機能し、2 回目は Person.Contacts が空になり、AddContact テキストボックスをクリアできません。

ウェブ全体とここで Stackoverflow を検索しましたが、答えが見つかりませんでした。ここに未回答の質問があります

PS: ASP.NET Webforms から来て、MVC は初めてです。

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

asp.net-mvc-3 - MVC3: _Layout でインデックス ビューと部分ビューを一緒にレンダリングする方法

それで、ヘッダー、左側のナビゲーションメニュー(部分ビュー)、右側のコンテンツ(インデックスビュー)を持つページを取得しました。メニューをナビゲートした後、すべてのページのコンポーネントをリロードする際に問題が発生しました。

これが私の_Layoutです

また、Index.cshtml のコンテンツを更新する actionlink (with updateTargetID = "partial") のリストを持つ "MenuPartial" という名前の部分ビューも取得しました

私のホームコントローラーでは、ActionResult インデックスは View() を返します

次に、_viewStart に少し変更を加えました

}

したがって、必要なのは、アクションリンクがクリックされるたびに、更新される部分ビュー (更新された値があるため、更新する必要がある) とインデックス ビューです。そして、私の現在の結果、アクションリンクをクリックすると、本文がレンダリングされ、インデックスが更新されましたが、部分的なビューはなくなりました。誰かがこれに対する解決策を持っていますか?

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

asp.net-mvc - ASP.NET MVC アプリで文字列定数を格納する場所は?

具体的には、一連のビュー (およびいくつかのアクション) で使用される電話番号があり、それが変更された場合に備えて、それをどこかに集中させたいと考えています。web.config で十分ですか? これに適した場所はありますか?理想的には、値が変更された場合に再コンパイルする必要はありません。ありがとう!

更新: これまでのところ、部分ビューが一番気に入っています。主な理由は、再コンパイルがなく、viewmodel に追加されていないことです。私が検討したもう 1 つのオプションは、global.asax の Application_Start とアプリケーション ディクショナリの使用です (ただし、このディクショナリの使用は mvc では嫌われているように思えます)。注意すべきことの 1 つは、一部のアクションでもこの番号を使用する必要があることです。これ以上の考え/意見はありますか?

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

c# - MVC ビューでセッション変数を使用することに対する簡単な答えは?

MVC ビューでセッション変数を使用するのに問題があります。以下の例では、コントローラーを介して IsLoggedIn セッション変数を true に設定すると、ビューの If 条件が満たされません。注: 読みやすくするために、関係のないコードの一部を削除しました。前もって感謝します!

コントローラ:

意見:

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

asp.net-mvc - 遅延レンダリングされない MVC 部分/子ビューを使用できますか?

私が知る限り、MVC は部分ビューをメイン ビューとは異なる方法で扱っているようです。メインビュー内のオブジェクトにアクセスできるように見えますが、メインコントローラーアクションが返されたときにそのオブジェクトが破棄される場合、その子ビューにはアクセスできません(私の質問 here を参照してください)。

これは、メインコントローラーアクションのオブジェクトが破棄された後、AJAX またはその他のメソッドを介してこれらの部分ビューの非同期更新を容易にするためだと思います。これは私にとって完全に理にかなっています。

私が現在部分ビューを使用しようとしている方法では、この非同期更新機能は必要ありません。部分的なビューをすべて切り取ってまとめることもできますが、探しているのは、すべてのビューを 1 つの巨大なファイルにまとめるのではなく、ビューを小さなチャンクに分割する方法にすぎません。

理想的には、コントローラーからビューにオブジェクトを渡し、そのオブジェクトをビューと子/サブビューで利用し、ビューとそのサブ/子ビューが終了した後にのみオブジェクトを破棄できるようにしたいと考えていますそれを使用しています。

編集 - 例の追加

1 つのファイルに大きな複雑なビューがあります。各行が実際にはビュー マークアップとコードのより大きく、より複雑なブロックであると想像してください。

ViewStuff.cshtml

利便性とメンテナンスのために、このビューをいくつかの個別のファイルに分割し、その一部をサブビューに効果的に抽出します。たとえば、「抽出メソッド」リファクタリングのようなものです。

ViewStuff.cshtml

MoreViewStuff.cshtml

EvenMoreViewStuff.cshtml

私が知る限り、部分ビューがこれに対する答えのようですが、使用できる方法はたくさんあるようです。私が得ている問題は、コントローラーのアクションが返されたときに破棄されるビューにコントローラーがオブジェクトを渡していることです。

「all in one file」のシナリオでは、メソッドが戻る前にビュー全体が構築され、オブジェクトが破棄されるため、オブジェクトをうまく利用して完全なビューを構築できます。ただし、これは理想的ではありません。ビュー ファイルが大きく、長く、モノリシックであり、後で一部が重複する可能性があるためです。

「複数のファイル」のシナリオでは、まだ破棄されていないため、メイン ビューはオブジェクトに問題なくアクセスできます。しかし、部分ビューがオブジェクトを取得する前に、メインのコントローラー アクション メソッドが戻り、オブジェクトを破棄します。その結果、部分ビューでエラーが発生し、使用できなくなったオブジェクトを探しています。

私が欲しいのは、コントローラー メソッドがオブジェクトを破棄する前に、複数の編成されたチャンクから作成された完全なビューを構築する方法です。

繰り返しますが、このオブジェクトで何をしているのか、コントローラー内の using ステートメントなどに関するより具体的なコードについては、他の質問を参照してください。