[解決済み】ASP.NET Web APIでクエリ文字列のパラメータを任意に設定する方法
2022-04-05 08:46:12
質問
以下のWebAPIメソッドを実装する必要があります。
/api/books?author=XXX&title=XXX&isbn=XXX&somethingelse=XXX&date=XXX
クエリ文字列のパラメータは、すべてNULLにすることができます。つまり、呼び出し側は0から5つのパラメータを全て指定することができます。
で MVC4ベータ版 以前は以下のようにしていました。
public class BooksController : ApiController
{
// GET /api/books?author=tolk&title=lord&isbn=91&somethingelse=ABC&date=1970-01-01
public string GetFindBooks(string author, string title, string isbn, string somethingelse, DateTime? date)
{
// ...
}
}
MVC4 RCでは、もうこのような動作はしません。パラメータを5個未満しか指定しないと
404
と言っています。
コントローラ 'Books' でリクエストに一致するアクションは見つかりませんでした。
URLルーティングでオプションのパラメータを指定することなく、以前のように動作させるには、どのような正しいメソッドシグネチャが必要でしょうか?
どのように解決するのですか?
この問題は、MVC4の通常版リリースで修正されました。 これで、できるようになりました。
public string GetFindBooks(string author="", string title="", string isbn="", string somethingelse="", DateTime? date= null)
{
// ...
}
で、全ては箱から出してすぐ動きます。
関連
-
[解決済み] [Solved] 1つ以上のエンティティで検証に失敗しました。詳細は'EntityValidationErrors'プロパティを参照してください [重複]。
-
[解決済み】データが存在しないのに読み込もうとする試みが無効である
-
[解決済み] JavaScriptでクエリ文字列の値を取得するにはどうすればよいですか?
-
[解決済み] Node.js上のExpress.jsでGET(クエリ文字列)変数を取得する方法とは?
-
[解決済み] Chromeを使用してASP.NET Web APIがXMLの代わりにJSONを返すようにするにはどうすればよいですか?
-
[解決済み] クエリ文字列パラメータのJava URLエンコーディング
-
[解決済み] C#でURLのクエリ文字列を作成するには?
-
[解決済み] ASP.NET Web APIに整数の配列を渡しますか?
-
[解決済み] ASP.NET Web APIでエラーを返すためのベストプラクティス
-
[解決済み] URLのクエリ文字列パラメータを取得する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] メンバー '<メンバー名>' にインスタンス参照でアクセスできない
-
[解決済み】ASP.NET Core Dependency Injectionのエラーです。アクティブ化しようとしているときに、タイプのサービスを解決できません。
-
[解決済み】統合マネージドパイプラインモードで適用されないASP.NETの設定が検出された
-
[解決済み] 'SubSonic.Schema .DatabaseColumn' 型のオブジェクトをシリアライズする際に、循環参照が検出されました。
-
[解決済み】Socket.Selectがエラー "An operation was attempted on something that is not a socket" を返す。
-
[解決済み] UnityでOnCollisionEnterが呼ばれない
-
[解決済み】2年前のMSDateを把握する【クローズド
-
[解決済み】パラメータ付きRedirectToAction
-
[解決済み】画像のペイントにTextureBrushを使用する方法
-
[解決済み] 関数を終了するには?