小编Jes*_*dam的帖子

Json.NET 不识别数据注解并允许数据通过

我有以下代码:

public class EventController : ApiController
{
    //public IHttpActionResult Post(List<Event> Events)
    public IHttpActionResult Post(Newtonsoft.Json.Linq.JArray J)
    {
        //Debug.WriteLine(J.ToString());

        List<Event> Events = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Event>>(J.ToString(), new Newtonsoft.Json.JsonSerializerSettings {
            Error = delegate(object sender, ErrorEventArgs args) {
            Debug.WriteLine(args.ErrorContext.Error.Message);
            args.ErrorContext.Handled = true;
         },
            Converters = { new IsoDateTimeConverter() }
         }
      );

      foreach (Event Event in Events)
      {
         Debug.WriteLine(Event.Importance.ToString());
         Debug.WriteLine(Event.Date.ToString());
         Debug.WriteLine(Event.Description);
      }
   }
}

public class Event
{
    [DataAnnotationsExtensions.Integer(ErrorMessage = "{0} must be a number.")]
    [Range(0,10),Required]        
    public Int32 Importance { get; set; }

    //[OnConversionError: "Please enter a valid …
Run Code Online (Sandbox Code Playgroud)

.net c# json json.net

4
推荐指数
1
解决办法
3550
查看次数

标签 统计

.net ×1

c# ×1

json ×1

json.net ×1