4
我有以下型號查詢字符串模型綁定ASP.NET的WebAPI
public class Dog
{
public string NickName { get; set; }
public int Color { get; set; }
}
,我已經代表通過API暴露現在
public class DogController : ApiController
{
// GET /v1/dogs
public IEnumerable<string> Get([FromUri] Dog dog)
{ ...}
以下API控制器的方法,我想發出GET請求如下:
GET http://localhost:90000/v1/dogs?nick_name=Fido&color=1
問題:如何將查詢字符串參數nick_name綁定到屬性Ni ckName在狗課上?我知道我可以不用下劃線(即暱稱)來調用API,也不需要將NickName更改爲Nick_Name並獲取值,但我需要名稱保持與常規一樣。
編輯 這個問題是不是重複,因爲它是關於ASP.NET的WebAPI不是ASP.NET MVC 2
您的問題是關於將模型屬性綁定到別名,是否正確? [這個答案](http://stackoverflow.com/a/4316327/1454538)在那個職位上就是這樣。 – mezmi
實現System.Web.Mvc.IModelBinder和System.Web.Http.ModelBinding.IModelBinder是有區別的。對於MVC的BindModel是[對象BindModel(ControllerContext controllerContext,ModelBindingContext bindingContext)],對於WebApi是[bool BindModel(HttpActionContext actionContext,\t ModelBindingContext bindingContext)]。我在你的例子中看到可能的複製只覆蓋MVC而不是WebApi – dimpho