У меня есть класс сущности, как показано ниже. Я использую Json.Net для сериализации его в JSON. Теперь в классе есть несколько полей/свойств, которые должны быть сериализованы с разными именами из реальных свойств, и это легко достижимо с использованием атрибута [JsonProperty]
, как показано в приведенном ниже коде. Но что, если мне нужно изменить имя самого основного объекта, который помечен атрибутом [JsonObject]
? (Здесь я говорю о классе UserDashboards
, который получен из EntityBase<int>
.) Я попытался добавить несколько именованных параметров, таких как название, идентификатор и т. Д., Но они не помогли.Как изменить имя класса при его сериализации в JSON
[JsonObject]
public class UserDashboards : EntityBase<int>
{
public int UserID { get; set; }
public int DashboardID { get; set; }
public int DashboardSequence { get; set; }
public string DashboardTitle { get; set; }
public int PermissionLevelID { get; set; }
[JsonProperty("IsHome")]
public Nullable<bool> IsHomeDashboard { get; set; }
[JsonProperty("IsShared")]
public Nullable<bool> IsSharedDashboard { get; set; }
}
Я думал вопрос ясно дал понять, во всяком случае позвольте мне повторить. Серийное имя Json для вышеупомянутого класса/сущности UserDashboards должно быть чем-то вроде UserData. Что еще необходимо для объяснения этого вопроса? Какие фрагменты кода вы хотите и как они помогут. Я спрашиваю, может ли быть достигнуто в атрибуте [JsonObject]. Если мы не сможем добиться здесь того, что будет делать специальный код. –
Непонятно, что вы просите. У Json нет * имени * для объекта * root *, как в xml. Таким образом, в вашей json-строке не будет такой строки, как * UserDashboards *. –
Ваш комментарий просто разъясняет мои сомнения, я просто искал подтверждение, так как я не мог найти информацию о поиске, как использовать атрибут JsonObject для достижения того же. Похмелье XML заставляло меня думать, что это, безусловно, возможно. Пожалуйста, не голосуйте за любой пробел в понимании взгляда. –