@bigProblem

Проблемы с Десериализацией в готовый объект. Как преобразовать bool тип в '1' или '0'?

На форме есть CheckBox.

<ext:Checkbox ID="DELIVERY" runat="server" 
 Width="210" 
 FieldLabel="Рассылка" 
 LabelWidth="100" 
 MarginSpec="0 0 0 15">
</ext:Checkbox>


Отправляю параметры формы и следом Десериализую в готовый объект который предоставила мне Entity(DataBase First)

public partial class PERSON
    {
        public decimal ID { get; set; }
        public string NAME { get; set; }
        public string SURNAME { get; set; }
        public string PASSPORT { get; set; }
        public decimal SEX { get; set; }
        public System.DateTime BORN { get; set; }
        public decimal DELIVERY { get; set; }
        public decimal CITY_ID { get; set; }
    
        public virtual CITY CITY { get; set; }
    }


Отправка на форме.
<ext:Button ID="IDBUTTON" runat="server" 
Text="Добавить" 
Icon="Add" 
Flat="true" 
ToolTip="Добавить нового пользователя"
Cls="btnBackground"
Disabled="True">
<DirectEvents>
	<Click OnEvent="AddNewUser"
		After="Ext.Msg.alert('Сообщение','Пользователь добавлен');">
		<ExtraParams>
			<ext:Parameter 
				Name="values"
				Value="#{FormPanel1}.getValues(false, false, true, true)"
				Mode="Raw"
				Encode="True"/>
		</ExtraParams>
	</Click>                           
</DirectEvents>  
</ext:Button>


Получаем параметры формы на сервере.

[0] = {[NAME, Андрей]}
[1] = {[SURNAME, Андреанов]}
[2] = {[PASSPORT, 1221 212112]}
[3] = {[SEX, 1]}
[4] = {[COUNTRY, 1]}
[5] = {[CITY_ID, 2]}
[6] = {[BORN, 2015-10-29T00:00:00]}
[7] = {[DELIVERY, True]}


И так. Код который добавляет мне нового пользователя.

protected void AddNewUser(object Sender, DirectEventArgs e)
        {
            var objectParam = JsonConvert.DeserializeObject<PERSON>(e.ExtraParams["values"]);
            var DB = new Entities();
            DB.PERSON.Add(objectParam);
            DB.SaveChanges();            
        }


Но проблема в том что с combobox'а приходит TRUE или FALSE, а мне надо '0' или '1'. Так как мне поменять значение в ключе? И как сделать так что бы не было жёсткой привязки к ID элемента.
Только что начал изучать JSON.
  • Вопрос задан
  • 210 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Oxoron
Шарпер
Сделай класс BoolIntHybrid, у него неявные приведения к Int32 и string.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы