1
給出以下車型自定義模型綁定在網絡API基類
public class RequestBase
{
public DateTime TransactionTimestamp { get; set; }
public Guid RequestMessageId { get; set; }
}
[ModelBinder(typeof(RequestBaseModelBinder))]
public class StandardRequest : RequestBase
{
public Guid MyGuidId { get; set; }
public int MyIntId { get; set; }
}
在RequestBase
值通過頭部信息所以我想實現一個自定義模型粘合劑將它們綁定到模型
這是我這麼遠
public class RequestBaseModelBinder :IModelBinder
{
public bool BindModel(HttpActionContext actionContext, ModelBindingContext bindingContext)
{
var requestBase = bindingContext.Model as RequestBase;
if (requestBase != null)
{
requestBase.RequestMessageId =
Guid.Parse(actionContext.Request.Headers.GetValues("RequestMessageId").FirstOrDefault());
requestBase.TransactionTimestamp =
DateTime.Parse(actionContext.Request.Headers.GetValues("TransactionTimestamp").FirstOrDefault());
return true;
}
return false;
}
}
它目前還不爲bindingContext.Model
工作爲空