2016-08-31 5 views

答えて

0

ASP.NET Web APIにはMVCと同じdetault route principleがあります。

は自分のメソッドのパラメータ名にクエリ文字列にプロパティと一致し、あなたのパラメータに直接その後、マッピングされている値を渡すことができるようにするには:に行わ

コール:{yourserver}/API/valuesasparam ?/ MYPARAM = 498574395734958

あなたApiController呼び出す:

public class ValuesAsParamController : ApiController 
{ 
    [HttpGet] 
    public IEnumerable<string> Call(string myparam) 
    { 
     // Do something with your 'myparam' value 
    } 
} 

更新:

ObjectIdとして値を直接取得する場合は、モデルバインドの場合はhereをチェックします。そして、のObjectIdにあなたの文字列を変換するためfollwingコード:

MongoDB.Bson.ObjectId.Parse(myparam); 
+0

私は変換しないにコントローラのパラメータをObjectIdとして設定したい場合は、ObjectIdに文字列を自動的に変換します –

+0

ObjectIdに文字列を変換するためにModelBinderを大量に設定する方法です。私の投稿の更新を確認してください – bsoulier

+1

[ここ] (https:// stacko verflow.com/questions/10942824/mvc4-webapi-serialization-deserialization-mongodb-objectid)は別の**簡単な解決策です**。希望は誰かを助けます。 – stom

関連する問題