問題タブ [modelstate]
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 - 値が ModelState に保持されないようにする
良い一日!
ASP.NET MVC は、GET/POST サイクル中に入力の値を内部に格納ModelState
し、検証エラーが発生した場合にそれらを自動的に入力に入れることで、うまく機能します。
しかし、私のフォームには、検証エラー中に保持されるべきではない CAPTCHA フィールドがあります (CAPTCHA 値はリクエストごとに再生成されます)。
設定してこれを達成しようとしました
しかし、うまくいきません。
ModelState に保存されないように、モデル フィールドに適用できる属性があるのでしょうか?
前もって感謝します!
asp.net-mvc - エラーメッセージとともに検証の概要に画像を追加する方法は?
検証の概要に成功画像 (緑色のチェック マーク) と失敗画像 (赤色の警告) を含むエラー メッセージを表示したい。これを行う方法。そして私は検証の要約私はいくつかのテキストを太字、斜体などで表示する必要があります。そのために、このような文字列を渡そうとしました。
しかし、ページではそのままレンダリングされます。ユーザー名とパスワードを太字で表示していません。それを行う方法はありますか。コントローラーでこの検証エラー メッセージを受け取り、これを ModelState.add(error); に追加しています。
c# - AllowHtml、HttpRequestValidationException、および ModelState
私はこのビューモデルを持っています
html を含むHttpRequestValidationException
ifをスローする代わりに、 にメッセージを追加したいと思います。どうすればそれができますか?.Foo
ModelState
asp.net-mvc-3 - MVC 3 - ModelState が有効でない場合、ViewModel プロパティを Action のコレクションで再設定する
ドロップダウンをフォームに入力するためのコレクションを含むいくつかのプロパティを持つ ViewModel があります。get Action では、これらのプロパティが入力され、ビューが適切にレンダリングされます。
ユーザーがフォームを送信すると、Post アクションで、フォームに入力されたすべてのデータが ViewModel に含まれますが、ブラウザがそれらを送信しないため、すべてのコレクション プロパティが null になります。ModelState が有効な場合は問題ないので、もう必要ありません。ただし、ModelState が有効でない場合は、エラーを修正するためにフォームを再度表示する必要があります。
MVC はこれらのコレクションを一時的にどこにでも格納しますか? ビューモデルのプロパティは取得アクションと同じ値で簡単に入力できますか、それとも (キャッシュまたは新しいクエリから db に) 手動で入力する必要がありますか?
MVC は元の値を保存するので、アクション後の検証中に使用できると思いましたが、わかりません。
ありがとう
asp.net-mvc - ModelState.Removeを使用してModelStateを処理する正しい方法ですか?
私は大きなMVC3Webアプリケーションに取り組んでおり、そのModelState.IsValid
方法に悩まされています。
ModelStateは、投稿されているデータを検証するために、ほぼすべてのコントローラーで使用されています。ビューはすべて、異なるクラスを含むViewModelsに基づいており、これらのクラスには明らかに、としてマークできるプロパティが含まれてい[Required]
ます。
私が抱えている問題は、必要なプロパティが必要ない場合があり、それが真になるModelState.Remove
ようにメソッドを使用する必要があることModelState.IsValid
です。
私の質問は、を使用することModelState.Remove
です。これは物事を行う正しい方法ですか、それともより効率的なアプローチがありますか。
c# - アクションのタイプがRedirectToRouteResultの場合、ビューにエラーを表示します。
以下のコードはビューにエラーを表示していません。エラーがビューに表示されるようにするにはどうすればよいですか?
//どこかで問題が発生した場合、ルールの例外をスローすることに注意してください。問題が発生した場合は、エラーをmodelstateにコピーします。
例:CopyTo拡張メソッド:
私の見解では、私は基本的に次のことをしています。
モデルの状態がクリアされ、リダイレクトにエラーが残っていないと思いますか?
validation - チェックボックスが true の場合にのみフィールドを検証する (ASP.NET-MVC3)
デフォルトでは非表示で、ユーザーが「追加情報」チェックボックスをオンにした場合にのみ表示されるフィールドがあるフォームがあります。これらのフィールドを、クライアント側とサーバー側の両方でデータ注釈属性 (必須、文字列の長さ、一致する正規表現など) に対して検証する必要がありますが、「追加情報」チェックボックスがオンになっている場合のみです。
データ注釈でこれに対する組み込みのソリューションはありますか?
最善の解決策は、ビューモデルのみを変更するものですが、コントローラーにカスタム コードを記述して手を汚す必要がある場合は、それで十分です。
ModelState.IsValid などを使用できるようにしたいので、他に方法がない場合は、モデル状態を改ざんすることもオプションです。
これに対する良い解決策を提案できますか?
asp.net-mvc - FormCollection、ViewData、および ModelState へのアクセスを取得する方法
ビューで直接作業している場合以外に、ASP.NET MVC アプリケーションで実行しているときに、現在実行中のリクエストの FormCollection、ViewData、ModelState などにアクセスする方法はありますか? ビュー内からいくつかのカスタム ハンドラーを呼び出せるようにしたいのですが、それらを渡すことなくこれらのコレクションにアクセスできます。WebフォームのHttpContext.Currentに似たものを考えていますか?
json - ASP.NET MVC 3 ModelState.IsValid は、Ext.Direct を使用してエンコードされた JSON データに対して常に true を返します。
フォームがあり、必須項目は顧客名だけです。したがって、私のモデルには次のものがあります。
以前、私は HTML 投稿を行っていましたが、検証を含め、すべてが正常に機能していました。
ここで、重要な事実であるExt.direct.mvc ( http://code.google.com/p/ext-direct-mvc/ ) を使用してフォームを「ajax 化」し、データを Json に投稿しました。フォーマットとデータが正常に投稿されています。
コードにブレークポイントを設定すると (現在はデバッグ目的で変更されています):
CustomerOrderModel.CustomerOrderHeader.CustomerName = "" であることがわかります
しかし、ModelState.IsValid は true です。
今私が試したことのいくつかについて:
CustomerName = null であることを確認するために、ModelState.isValid をチェックする直前に次のコードを挿入しました。
customerOrderModel.CustomerOrderHeader.CustomerName = null;
TryUpdateModel(customerOrderModel) を使用してみましたが、次のエラー メッセージが表示されます。
TryUpdateModel がタイプ 'System.MissingMethodException' の例外をスローしました
「ルート」「CustomerOrderHeader」の名前が「customerOrderModel」に変更されてパラメーターに一致するように、json データを変更しようとしました。
これらのことはどれもうまくいきませんでした。では、検証が機能しなくなったというのは、何が間違っているのでしょうか? 問題をデバッグするには、どのような手順を実行できますか?
カウンセラーベンの編集
カウンセラーベンの編集2
asp.net-mvc-2 - asp.net-mvc2-強く型付けされたヘルパーはモデルを使用していませんか?
MVC2で強く型付けされたヘルパーを使用する場合、投稿が行われるときに入力フィールドの値はModelプロパティから取得されません。これはデフォルトの動作ですか?
(強く型付けされた)ヘルパーを強く型付けしたビュー:
コントローラーアクション:/ Product / Edit / 5
HTML出力:
コントローラーアクション:/ Product / Edit / 5