using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Text; namespace WebAPI.Models { public class ClsWW_PPBomBill : DBUtility.ClsXt_BaseBillMain { //[JsonProperty("HInterID")] //[JsonConverter(typeof(StringToLongConverter))] public int HInterID { get; set; } public Int64 HDeptID;// public Int64 HSupID;// public string HOrderProcNO;// public Int64 HYear; public Int64 HPeriod; public string HBillType; public string HBillSubType; public string HDate; public string HBillNo; public Int64 HBillStatus; public string HRemark; public string HMainSourceBillType; public Int64 HMainSourceInterID; public Int64 HERPInterID; public string HERPBillType; public Int64 HSUBORGID; public int HEmpID; public int HManagerID; public int HICMOInterID; public int HICMOEntryID; public int HSUBREQENTRYSEQ; public int HMaterID; public int HUnitID; public int HSeOrderInterID; public int HSeOrderEntryID; public int HSeOrderSEQ; public int HENTRUSTORGID; public int HPARENTOWNERID; public int HPARENTOWNERTYPEID; public int HSETTLEORGID; public decimal HQty; public string HSUBBILLNO; public string HPOOrderBillNo; public string HPOOrderSeq; public string HSeOrderBillNo; public string HREQSRC; ///////////////////////////////////WW_EntrustOrderBillSub } public class StringToLongConverter : JsonConverter { public override bool CanConvert(Type objectType) { return objectType == typeof(long); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { if (reader.TokenType == JsonToken.String) { string stringValue = reader.Value.ToString(); if (long.TryParse(stringValue, out long result)) { return result; } } else if (reader.TokenType == JsonToken.Integer) { return Convert.ToInt64(reader.Value); } return 0L; } public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { writer.WriteValue(value.ToString()); } } }