問題タブ [parameterbinding]
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.
powershell - [string] vs [hashtable] vs [pscustomobject] に基づいてパラメーター セットを解決できないのはなぜですか?
この関数を考えてみましょう:
配管[pscustomobject]
は期待どおりに動作します。
ただし、パイピング[string]
は例外をスローします。
そう[hashtable]
です:
DefaultParameterSetName='hastable'
原因を追加しますが、正しく解決し[hashtable]
ません。[string]
Trace-Command からの出力を解釈する経験がありません。[string]
の出力に次の行が含まれていることに気付きました。
arg [string] を param [PsCustomObject] にバインド成功
PowerShell[string]
が[PsCustomObject]
. しかし、'string' -is [pscustomobject]
評価すると$false
.
これにより、次の質問が残ります。
[string]
PowerShell が aと a の型の違いに基づいてパラメーター セットを選択できないのはなぜ[pscustomobject]
ですか?- その理由は、PowerShell が a
[string]
をa と見なすため[pscustomobject]
ですか? もしそうなら、それはなぜですか? - 異なるタイプを使用して異なるパラメーター セットを選択できるようにする回避策はありますか?
c# - パラメーター バインド用の Web API グローバル日時形式
アプリケーション (asp.net Web API) で DateTime パラメーターをバインドする際に問題があります。私は、web api よりも asp.net MVC 4 に精通しています。私の古い MVC アプリケーションでは、どのクライアント アプリケーションからも同じ日付形式を受け取っていたので、IModelBinder
このコードを使用して DateTime 値を解析するカスタム実装を用意しました。
Web API プロジェクトで同様のものが必要であり、解決策を見つけるのに頭を悩ませています。カスタムHttpParameterBinding
を試してみましたが、他の StackOverflow の質問からの解決策も試しましたが、役に立ちませんでした。
基本的に必要なのは、本体または uri (クエリ文字列) からグローバルに日付パラメーターの形式を指定することです。
何を読むべきか、または解決策を見つけるために何に慣れるべきかについての指示さえあれば、それもありがたいです.
asp.net-web-api2 - パラメータバインディングの文字セットを制限するには?
ルート値、クエリ パラメータ、json 本文の Web サービスの文字セットを latin1 に制限しなければならない状況にあります。
私は econtent negotiator をいじってみましたが、これは応答の書式設定のためだけのものです。
メディア フォーマッタでサポートされているエンコーディングを予期しない文字をスローするエンコーディングに置き換えようとしましたが、たとえば、JsonMediaTypeFormatter がReadFromStream
呼び出しを行うと、effectiveEncoding パラメータはすでに latin1 であり、文字列はすでに文字化けしています (私は試しています一部漢字あり)。
私が実際に望んでいるのは、間違ったエンコーディングが指定されたとき、または latin1 以外の文字が表示されたときはいつでも、BadRequest の結果を作成することです。
それを修正するための正しい場所をどこで探すべきか、誰かにヒントを教えてもらえますか? DelegatingHandler ですべて「手動」で行うよりも良い方法があるはずです。