الميراث الآلي: كيفية إضافة اتفاقية التمييز لفئة قاعدة

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

  •  21-09-2019
  •  | 
  •  

سؤال

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

(يوفر ICLASSCONVENEATE خاصية التمييز ولكنه للقراءة فقط ، لذلك لا حظ هناك.)

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

المحلول

الطريقة الوحيدة التي أعرفها هي إجراء تجاوز رسم الخرائط البسيط فقط للفئة الأساسية.

public class DepotMappingOverride : IAutoMappingOverride<Depot>
{
    /// <summary>
    /// Alter the auto mapping for this type
    /// </summary>
    /// <param name="mapping">Auto mapping</param>
    public void Override(AutoMapping<Depot> mapping)
    {
        mapping.DiscriminateSubClassesOnColumn("Type", "BaseDepot");
    }
}

الآن سيكون "المستند إلى" قيمة تمييز لفئة المستودعات.

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