Я не уверен, почему мое перечисление типа ScheduleType не привязывается к типу свойства в приведенном ниже json. Другие свойства связывают find, и у меня не было проблем с привязкой enum в других местах, мысли? Всегда по умолчанию используется первый.
JSON
{"Id":0,"BulkInsertId":null,"DivisionId":10406,"DivisionName":"17","DivisionOrder":1,"Type":1,"Name":"A1 vs. A2" }
< Сильный > Класс сильный >
public class ScheduleMatchupModel : IScheduleMatchupModel
{
public ScheduleType Type { get; set; }
public int Id { get; set; }
public int DivisionId { get; set; }
public int? DivisionOrder { get; set; }
public string DivisionName { get; set; }
IScheduleMatchupModel.cs
public interface IScheduleMatchupModel
{
int Id { get; set; }
ScheduleType Type { get; set; }
ScheduleType Enum
[DataContract(Namespace = "")]
public enum ScheduleType
{
[EnumMember(Value = "0")]
All = 0,
[EnumMember(Value = "1"), Display(Name = "Pool Play")]
Pool,
[EnumMember(Value = "2"), Display(Name = "Bracket Play")]
Bracket
}
1 ответ
С помощью атрибута EnumMember вы устанавливаете определенные значения для своих перечислений:
[EnumMember(Value = "0")]
All = 0,
[EnumMember(Value = "1"), Display(Name = "Pool Play")]
Pool,
[EnumMember(Value = "2"), Display(Name = "Bracket Play")]
Bracket
Единственная проблема заключается в том, что свойство Value EnumMember представляет собой строку:
public string Value { get; set; }
И вы назначаете целые числа своим перечислениям в своем JSON:
{...,"Type":1,... }
Поэтому вам следует попытаться изменить его на строку в своем JSON:
{..."Type":"1",... }
Похожие вопросы
Новые вопросы
asp.net-mvc
ASP.NET MVC Framework - это платформа и инструмент веб-приложений с открытым исходным кодом, которые реализуют версию шаблона модель-представление-контроллер (MVC), адаптированную к веб-приложениям и построенную на основе технологии ASP.NET.