كيف يمكنني استخدام الأنواع الابتدائية من JSON في ASP.NET (System.runtime.serialization.json)

StackOverflow https://stackoverflow.com/questions/1721033

  •  19-09-2019
  •  | 
  •  

سؤال

أهلا! لدي مشكلة صغيرة. عندما أستخدم Datacontractjsonsializerizer مع أنواع معقدة (أنواع خاصة)، فإنه يعمل بشكل جيد. ولكن لا بد لي من استخدام الطابع الزمني أو القطط من سلسلة. لذلك لا أستطيع تحديد هذه الأنواع مع DataContract، سمات Datamember.

كتبت بعض الكود


string jsonedTS="PT2M15S";

DataContractJsonSerializer jsonSerializer = new DataContractJsonSerializer(typeof(TimeSpan));
MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(jsonedTS));
            try
            {
                result.Takes = (TimeSpan)jsonSerializer.ReadObject(ms);
            }
            catch
            {
                ;
            }

وأمسك بهذا الاستثناء

{"حدث خطأ يحمل كائن من النوع System.Timespan. واجه حرف غير متوقع 'p'.

وسؤالي هو كيف يمكنني التحيز

هل كانت مفيدة؟

المحلول

يمكنك محاولة مع json.net. المكتبة - عملت بشكل جيد للغاية بالنسبة لنا في الماضي.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top