سؤال

أحاول تنفيذ فئة ملف تعريف مخصص في C # التي ترث system.web.profile.profilebase. لدي عدد قليل من خصائص System.Collations.generic.List التي تحتاج إلى تسلسل مثل ثنائي بدلا من XML الافتراضي. ومع ذلك، أنا غير متأكد من كيفية وضع علامة على هذا الإعداد في فئة الملف الشخصي.

على سبيل المثال، لدي خاصية تسمى "SavedReports" التي هي من قائمة النوع. إذا كنت لاستخدام نهج Web.config، فسأكتب ببساطة:

<code>
<profile>
 <providers>
  <add name="SavedReports" serializeAs="Binary" type="System.Collections.Generic.List`1[MyNamespace.SavedReports]"/>
<code>

ومع ذلك، أنا غير متأكد من كيفية إضافة سمة Serializeas = "ثنائي" في C # لتنفيذ مخصص:

[SettingsAllowAnonymous(false)]

    public List<SavedReport> SavedReports
    {
        get { return base["SavedReports"] as List<SavedReport>; }
        set { base["SavedReport"] = value; }
    }

أي مساعدة سيكون رائعا.

شكرا كريس

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

المحلول

لقد وجدت هذا:

settingserializeasattribute.

باستخدام SettingserializeAsattribute، يمكنك تحديد آلية التسلسل التي يجب استخدامها في فئة أو خاصية إعدادات تطبيقات معينة. تعتبر هذه السمة طلبا إلى مزود الإعدادات. قد يتم تجاهله أو يتسبب في خطأ إذا كان الموفر أو نوع الخاصية الفردية لا يدعم مخطط التسلسل المحدد. إذا كانت هذه السمة غير موجودة، فسيقدم المزود عادة آلية التسلسل الافتراضية، وأكثر النص عادي.

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