التحكم في أسماء الخصائص على كائنات ASP.Net Ajax المتسلسلة

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

  •  02-07-2019
  •  | 
  •  

سؤال

للبدء، أعلم أن هناك "نوعين" من تسلسل JSON المدمج حاليًا في ASP.Net:يمكنك إما استخدام فئة JavaScriptSerializer لإجراء تسلسل للكائن الخاص بك إلى JSON أو فئة DataContractJsonSerializer الجديدة لتحويل كائن إلى JSON.

إذا كنت تستخدم طريقة JavaScriptSerializer()، فيجب عليك وضع علامة على فصلك على أنه Serializable() - إذا كنت تستخدم أسلوب DataContractJsonSerializer، فيجب عليك وضع علامة على فصلك على أنه DataContract()، ووضع علامة على خصائصك على أنها DataMembers().

إذا أردت، يمكنك تحديد سمة NAME لكل DataMembers، لذلك عندما يتم إجراء تسلسل/إلغاء تسلسل الخاصية، فإنها تستخدم هذا الاسم.لأغراضي، أرى أن هذا مفيد لجعل JSON ليس "مليئًا بالألفاظ".على سبيل المثال، بدلاً من ذكر "معرف المستخدم" كملكية خاصة بي (وتكراره عبر كائن JSON الخاص بي)، أود ببساطة استخدام "u".بيانات أقل عبر السلك، وما إلى ذلك.

يظهر محركا التسلسل مختلفين بعض الشيء، ويمكنك فقط استخدام JavaScriptSerializer مع أساليب ASP.Net Web/Script.وهنا تكمن مشكلتي.

هل هناك طريقة مكافئة لتعيين اسم خاصية لشيء آخر، بشكل صارم لأغراض التسلسل/إلغاء التسلسل باستخدام JavaScriptSerializer العادي؟

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

المحلول

لا، لا يوجد.

نصائح أخرى

بافتراض أنك تقوم بحفظ 40 بت عبر السلك بهذه التقنية باستخدام UTF-8، فإن الأمر لا يستحق النوم الضائع.

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