我正在尝试使用两个不同的查询字符串值或请求正文来使Web API绑定我的模型上的特殊属性。采取这种模式:在Web API复杂模型中的属性绑定
public class CustomEvent {
public int Id { get; set; }
public string Name { get; set; }
public TimeInterval DateRange { get; set; }
}
public class TimeInterval {
public DateTime StartDateUtc { get; set; }
public DateTime EndDateUtc { get; set; }
}
而这种快速的控制器操作:
[HttpPost, Route("events/add")]
public void AddEvent(CustomEvent event)
{
// Get events
}
URL被击中/events/add
具有以下JSON体:
{
"Id": 2,
"Name": "This is the event name",
"Start": "dd-mm-yyyy",
"End": "dd-mm-yyyy"
}
这些JSON性能Start
的名称和End
不能更改,但我希望将这些绑定到我的模型上的我的TimeInterval
属性。
是否有可能在WebAPI中创建属性绑定?
理想的情况下,我要对我的DateRange
属性创建一个属性像[TimeIntervalBind(StarDatetUtc = "Start", EndDateUtc = "End")]
赶场名称,但目前被困我是否应该使用IModelBinder
或在的WebAPI其他替代品之一。