2009-07-26 16 views
3

には、私は別の名前にアクションのパラメータをマッピングすることはできますか? 「で」だから地図ASP.NET MVCアクション・パラメータ名は別の名前

search?q=someQuery&in=location&for=x 

とメソッドのパラメータ名として使用することはできません「のための」:

は私のようなアクションのためのパラメータとして予約語を使用します。 はそのための機能で構築されたか、私はモデルバインダーを作成する必要がありますか?

ありがとうございました。

答えて

11

あなたはむしろC#での予約語よりも、文字通りに解釈する名前を作るために「@」記号を使用することができます。

public ActionResult Test(string @for) 
{ 
    var something = @for; 
} 
+0

グレート。ありがとう!それを完全に忘れました(html属性の@classのように)。 しかし、どのような「場所はINLOCATION」という名前のパラメータに「中」のようなクエリ項目のマッピングについてはどうですか? [ActionParameterName( "中")]場所はINLOCATION:私はちょうどのような使用にActionParameterNameAttributeを作成することがあります。 アクションには[ActionName]とまったく同じです。 – elado

+7

public ActionResult MyMethod([バインド(接頭辞= "in")]文字列inLocation){...} – Levi

+0

@Levi - それは役に立ちません。 –