問題タブ [value-provider]
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.
c# - ASP.NET MVC:モデルバインディングとAjaxリクエスト
私はボタンを持っています:
ボタンのJavascript:
アクションの削除:
問題はid
パラメータです。直接使用すると便利ですDeleteTeamEmployeeInput
。
Complextオブジェクトを使用すると、常にnullになります。単純なint型は問題なく機能します。
削除アクションに複合型を使用するにはどうすればよいですか?
クラスDeleteTeamEmployeeInput:
削除ボタン:
json - ASP.NET MVC: アクションごとまたはルートごとに値プロバイダーを指定しますか?
ASP.NET MVC 3 でアクションを設定して、Mercurial Webhook リクエストのペイロードを処理しようとしています。この場合、 Kiln によって生成されます。
ペイロードは JSON ですが、残念ながら content type の URL エンコードされたフォーム値として送信されます。これは、パラメータ名なしでエンコードされていないものapplication/x-www-form-urlencoded
を使用application/json
して送信すると、あまりにも簡単で標準的なものになるためです。
これは、標準のコンテンツ タイプJsonValueProviderFactory
を使用する要求しか取得しないため、新しいものだけを使用できないことを意味します。そしてもちろん、JSON ではなく実際にフォーム データを受け取るアプリ内の他の場所でフォーム データ値プロバイダーを使用するために、これらのリクエストが必要なためapplication/json
、ファクトリにリクエストをピックアップさせることはできません。application/x-www-form-urlencoded
では、ValueProvider または ValueProviderFactory を特定のアクションまたはルートにのみ使用するように指定する方法はありますか?
asp.net-mvc - 二重値バインディングの問題
私のプロジェクトでは、ユーザーが「,」または「.」を使用して、2 つの形式で double 値を入力できるようにしたいと考えています。区切り記号として(指数形式には興味がありません)。区切り文字「.」を使用したデフォルト値 働かないでください。この動作が複雑なモデル オブジェクトのすべての double プロパティで機能することを望みます (現在、識別子と値を含むオブジェクトのコレクションを使用しています)。
何を使用する必要がありますか: 値プロバイダーまたはモデル バインダー? 私の問題を解決するコード例を示してください。
asp.net-mvc - グローバルに設定せずに、カスタム ASP.NET MVC IValueProvider を使用しますか?
Cookie からキー/値を取得し、それを使用してモデルをバインドできるようにしたいと考えています。
カスタム ModelBinder を構築するよりも、DefaultModelBinder がすぐに使用できると思います。値の取得元を選択する最善の方法は、使用する IValueProvider を設定することです。
これを行うために、カスタム ValueProviderFactory を作成してグローバルにバインドしたくありません。これは、この ValueProvider を特定のアクション メソッドで使用したいだけだからです。
これを行う属性を作成しました:
残念ながら、ModelBinder とその IValueProvider は OnActionExecuting の前に設定されます (なぜ?????)。ValueProviderFactory を使用せずにカスタム IValueProvider を DefaultModelBinder に挿入する方法を見つけた人はいますか?
jquery - MVC2-JQuery送信のフォームコレクションに表示されないJQueryを介してフォームに追加されたチェックボックス
私は別のプロジェクトを引き継ぎ、この1つの問題を除いて他のすべてを修正しました。私は以前にこれを見たことがあると思いますが、私の人生の間、解決策が何であったかを思い出すことができません。
.sparkビューのテーブルは次のようになります。次に、getJSON()を使用するJQueryスクリプトが呼び出され、最初にすべての行がクリアされてからtbodyにデータが入力され、すべての行と列が作成され、各行の最初の列にチェックボックスが追加されます。各チェックボックスは「testitem」と呼ばれます。 '。
フォームを送信するための.clickイベントハンドラーもあります。
フォームはコントローラーアクションに送信され、チェックボックスはフォームコレクションに戻されると想定しました。
valsが作成されると、nullとして返されます。したがって、formcollectionにデータが含まれていないか、私が知らない辞書の作成に問題があります。
どんな助けでも大歓迎です。
ありがとう!
c# - ModelStateに必要なすべての値が含まれているにもかかわらず、DefaultModelBinderがモデルをバインドしない(常にnull)
サンプルのASP.NETMVC3アプリケーションを使用しています。を使用してログイン要求を送信することにより、作業中のプロジェクトのAPIの概念実証に取り組んでいますHttpWebRequest
。データをJSONとして送信し、コンテンツタイプ「application/json」を使用しています。
これが私が持っている方法です:
問題は、私が期待するすべてのキーと値が含まれているにもかかわらずModelState
(たとえば、Dictionaryには{"UserName" = "username"、 "Password" = "password"、 "RememberMe"=true}が含まれていることです。 LogOnModelクラス)、model
メソッドを呼び出すたびにオブジェクトはnullになります。
「application/x-www-form-urlencoded」を使用する場合、この問題は発生しません。私も追加して、追加せずに試しました
私のApplication_Start
方法に。
上記のメソッドにリクエストを送信するために使用しているコードは次のとおりです。
asp.net-mvc-3 - MVC3 ControllerContext クエリ文字列コレクションと ValueProvider のモック
Steve Sanderson の MVC3 book のコード サンプルに従いました。フォームを設定して文字列値をクエリできる ControlContext モック コードの一部があります。
単体テストで TryUpdateModel をサポートするために、コードにいくつかの変更を加えました。たとえば、formValues のデータ型を に変更しFormCollection formValues
、次のコードを追加して機能させました。
一方、クエリ文字列コレクションに対して同じことをしたいのですが、そのような機能をサポートする同等のクラスが見つかりませんでした。
文字列をクエリするために何をすべきか誰が考えていますか?
c# - その後、ASP.NET MVCでのモデルバインディング:QueryString値をビューモデルに変換する方法は?
パラメータのないアクションメソッドがあります。
QueryString
コレクションには私のすべての値が含まれています。のキーはQueryString
、ビューモデルのプロパティと一致します。
QueryString
コレクションをビューモデルに変換するにはどうすればよいですか?ASP.NET MVCは、ビューモデルをアクションメソッドパラメーターに渡すだけで、すでにこれを実行しています。したがって、必要なのは、ASP.NETMVCメカニズムを使用した後でモデルをバインドすることです。
c# - ASP.netMVCJsonValueProviderバイトタイプの問題
JSONをコントローラーメソッドに投稿していますが、JSON番号をバイトタイプにキャストしようとすると、ASP.NetMVC3に含まれているJsonValueProviderが壊れているように見えます。
基本的に何が起こっているのかというと、バイトに変換する必要のあるnull以外の値はnullであり、モデルの状態にはエラーメッセージのないエラーがあります。リターンJSONの問題リストに見られるように。dnbscoreとregionにはエラーがありますが、評価にはエラーがありません。JSONが渡されたとき、これらのフィールドに値があったとしても、返されるデータにはdnbscoreとregionがnullとして含まれています。カスタムモデルバインダーを使用してこれを処理できますが、JsonValueProiderを期待どおりに機能させるための別のアプローチがあるのではないかと思います。
これは私が構築しようとしているオブジェクトです:
これは、POSTリクエストで送信しているJSONです。
モデルの状態をチェックする私のメソッドの一部:
JSONを返します:
完全を期すために、この問題を回避するために私が行ったことは次のとおりです。
ダリンから提供された情報で、これは単なるバイトよりも大きな問題であることに気づきましたか?intに?変換。これは、デフォルトのバインダーによって提供されるint以外の変換では問題になります。このため、バイト、小数などの数値を適切に処理するカスタムバインダーを作成しました。下記参照:
asp.net-mvc - MVC3 TryUpdate の前に着信モデルを変更するには?
これは単純なはずですが、私はそれを見ていないので、誰かが助けてくれることを願っています (私の投稿はおそらくすべてこのように始まります)。だから私はコントローラーに入ってくるモデルを持っています。
更新する前に、そのモデルに固有の何かをしたいです。たとえば、次のようになります。
ここで、TryUpdateModel または ModelState.IsValid が起動する前に、screenModel を ValueProvider に戻す必要があります。そうしないと、変更によって何も起こりません。メソッドで FormCollection を受け入れる場合は、次のように簡単に実行できます。
しかし、FormCollection を使用しない理由は他にもあります。オブジェクトを ValueProvider に戻すにはどうすればよいですか?