ca1047: بتعريف الأعضاء محمية في أنواع مختوم
TypeName |
DoNotDeclareProtectedMembersInSealedTypes |
CheckId |
ca1047 |
Category |
Microsoft.تصميم |
تعطيل تغيير |
غير فاصلة |
السبب
نوع عام هو sealed(NotInheritableفي Visual أساسى) و يقوم بتعريف عضو محمية أو محمية النوع المتداخل. هذه قاعدة لا يعلم انتهاكات ل Finalizeوظائف، الذي يجب أن يتبع هذا النقش.
وصف القاعدة
أنواع التصريح عضو s محمي بحيث ترث أنواع يمكن الوصول إليه أو يمنع عضو. بالتعريف، لا يورث من نوع متصفح المدونة، يعني أنه محمي وظائف تشغيل أنواع مختوم لا يمكن استدعاء.
المحول البرمجي C# صدور تحذير عن هذا الخطأ.
كيف إلى الإصلاح انتهاكات
لإصلاح انتهاكا لهذه قاعدة، تغيير المستوى وصول الأعضاء إلى خاص، أو تكوين نوع القابلة للتوريث.
عند إلى منع التحذيرات
لا بمنع تحذير من هذه قاعدة. ترك النوع بحالته الحالي يمكن أن تؤدي إلى حدوث مشكلات الصيانة و لا تقدم أية مزايا.
مثال
يظهر المثال التالي هو نوع من انتهاك هذه قاعدة.
Imports System
Namespace DesignLibrary
Public NotInheritable Class BadSealedType
Protected Sub MyMethod
End Sub
End Class
End Namespace
using System;
namespace DesignLibrary
{
public sealed class SealedClass
{
protected void ProtectedMethod(){}
}
}