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

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

validation - ドロップダウンMVCで検証が失敗する

私はEFでコードファーストを使用しています。System.NullReferenceException: Object reference not set to an instance of an object というエラーでドロップダウン リストで検証が失敗しているようです。これは、レコードを保存し、検証をテストするために意図的にコントロールを空のままにしたときに発生します。ドロップダウン リスト自体に選択肢がある場合でも発生します。

ここに私の見解の一部があります:

テキストボックスの検証を使用すると、次のようになります。

ここに私の作成コントローラーアクションがあります:

そして私のビューモデル:

そして、検証のための私の部分モデル:

そして最後に私のモデル:

DropDownListFor に関して MVC カミソリにバグがあることを読みましたが、それが私の状況に当てはまるかどうかはわかりません。いくつかの解決策を試しましたが、うまくいきませんでした。私は4.5フレームワークを使用しています。

ありがとう。

編集:

ページを送信すると、ドロップダウン要素でエラーが停止することに気付きました。

Model.Employees のモデルは null です。ページが送信されたときにバインディングが失われているようです。

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

c# - ラムダ式に関する専門家の意見-ViewModels

私はASP.NETMVCとラムダ式にかなり慣れていないので、これを行うための最良の方法を見つけようとしています。

状況:クライアントはサポートチケットを持っています。開いているチケットと閉じているチケットの数を表示したいViewModelがあります。

これを処理するためのより良い方法はありますか?私はそれが一般的なように見えることを知っていますが、専門家の意見が欲しいだけです。

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

asp.net-mvc - 1 回の送信でモデルを複数回保存するにはどうすればよいですか?

私はモデルを持っています:

私の作成ビューは次のようになります。

したがって、各テキストボックスはデータベース内の新しいレコードになります。このようなことは可能ですか?どうすればこれを処理できますか? また、私の最大の問題は、各フィールドがテキストボックスまたはコンボボックスまたはラジオになる可能性があることです....など...名前はたとえばテキストボックスかもしれませんが、年齢はコンボボックスかもしれません....すべてのテキストボックスがあることはわかっていますが、それは変わる可能性があります。

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

asp.net-mvc - http 投稿がビュー モデルから null を返すのはなぜですか

これは私のモデルです:

GET create に入力します

私のビューは次のようになります。

次に、My Post Create は次のようになります。

しかし、私IEnumerable<Attribute> attributesはnullです。助言がありますか?

0 投票する
0 に答える
2048 参照

asp.net-mvc-3 - ASP.NetMVCファイルのアップロードViewModelバインディング

そのため、私はASP.net MVCにかなり慣れておらず、ファイルアップローダーを作成しようとしていますが、アップロードしたファイルをビューモデルにバインドできないようです。ビューモデルを介してアップロードされたファイルに検証を適用しようとしています。これは実行可能であるはずです。

私のコード:

意見:

ViewModel:

コントローラーのアクション:

チュートリアルをグーグルで検索しましたが、次を使用して、アップロードされたファイルをビューモデルにバインドできるようです。

私はそれを機能させることができないようですので、皆さんが私を助けたり、正しい方向に私を押したりすることができるかもしれないと思いました。

前もって感謝します!

編集:HTML.BeginForm()でも試しましたが、どちらも機能しないようです

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

asp.net-mvc - ポストバックでデータが変更された後、HTMLコンテンツに新しい値を入力するにはどうすればよいですか?

アプリケーションがありMVC3 razorます。フォームを送信してコンテンツをAction変更するとViewModel、新しい値が入力されているのがわかりません。

それについてのトピックがあり、 http://aspnet.codeplex.com/workitem/5089?ProjectName=aspnetMVC2で修正される可能性があると言われました。MVC3

それを行うオプションがあるかどうか、またはポストバックを使用してJavaScriptなしでUIを更新するためのより良い方法(回避策)は何ですか?

アクション:

UI:

ViewModel:

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

asp.net-mvc-4 - 編集可能で読み取り専用のデータのベストプラクティスを備えたMVCViewModel

同じviewModelで編集可能/読み取り専用フィールドを処理するためのベストプラクティスは何でしょうか。私はより大きなViewModelでこの問題に直面していますが、非常に単純なViewModelがあると仮定しましょう。

私のPartialView:

明らかに、データを投稿するときに、DisplayNameは入力されません。いくつかの検証が失敗し、DisplayNameが欠落していると受け取ったデータを返すと仮定しましょう。

私はこれを修正するいくつかの方法があることを知っています:

1)追加

ビューでは、フィールドが1つしかない場合は問題ありませんが、表示専用フィールドが10ある場合はどうなりますか?

2)[HttpPost]のif(!Model.isValid)のデータを再クエリします。

3)TempDataにキャッシュできると思いますか?

これを行うための最良の方法は何ですか?ありがとう!

編集:検証が失敗した場合にデータを再クエリする必要を回避しようとしています

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

c# - 子インターフェイスを持つ ASP.NET MVC 4 ViewModel

カスタム モデル バインディングなしでこれを処理する方法はありますか?

私が抱えている問題は、インスタンス化する IJob の実装を理解していないため、デフォルトのモデル バインダーでエラーが発生することです。MyViewModel を作成したときに、FullTimeJob のインスタンスをその Job プロパティに設定しました。ASP.NET は実装型を保持できないのでしょうか?

これに対するベストプラクティスソリューションは何ですか?

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

asp.net-mvc - ASP.NET MVC ViewModel のグッド プラクティス

まず、ViewModel に関するこの非常に興味深い記事を共有したいと思います: http://rachelappel.com/use-viewmodels-to-manage-data-amp-organize-code-in-asp.net-mvc-applications

質問が 1 つあります
。すべての ViewModel クラスが基本クラス ex から派生するのは良い習慣ですか。正常に動作する ASP.NET MVC では、レイアウト (マスター ページ) モデルは BaseViewModel であり、各ビューには異なる ViewModel があります。

ViewModel インターフェイスの使用例も歓迎します。

ありがとう。リヤド

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

asp.net-mvc - 1つのモデルでMVC2つのビュー

1つのモデルに2つのビューを組み合わせようとしています。しかし、私はそれをうまく機能させることはできません!

手伝って頂けますか?

モデル:

チーム(足場)の詳細ページで選手のリストを取得しようとしています。

私はすでにビューモデルを作成しようとしましたが、次のようになります。

しかし、私はコントローラーが問題だと思います

コントローラ:

私はあなたがこれで私を助けることができることを願っています!どうもありがとう!

エラーメッセージ: