c# - Annotations on interfaces -


क्यों एनोटेशन इंटरफेस में काम नहीं करते?

जैसे:

  सार्वजनिक इंटरफ़ेस IUser {[आवश्यक] स्ट्रिंग प्रथम नाम {get; सेट; }}  

अब अगर मैंने इसे लागू करने के लिए एक क्लास बनाया है तो

  सार्वजनिक आंशिक क्लास ग्राहक: IUser {सार्वजनिक ग्राहक} () {} सार्वजनिक स्ट्रिंग प्रथम नाम {प्राप्त करें ; सेट; }}  

जब तक मैं वर्ग में संपत्ति को भी चिह्नित नहीं करता हूँ, यह सत्यापन को लागू नहीं करेगा! तो पहली जगह से इंटरफ़ेस में इसे एनोटेट करने का क्या मतलब है! ! तो किसी भी विचार?

अच्छा, इसका सरल उत्तर यह है कि है नहीं अंतरफलक में टिप्पणी में इंगित करें जैसे आपने नोट किया है, विशेषता को कॉल करना.गेटअट्रिब्यूट () (भले ही वारिस सत्य है) संपत्ति पर गुणों को वापस नहीं आती है जो आपके क्लास ने कार्यान्वित की है। संभवत: इस तरह की सुविधा का समर्थन करने से एक ही कार्यान्वयन से कई इंटरफेस संतुष्ट हो जाएंगे।

Comments

Popular posts from this blog

c# - sqlDecimal to decimal clr stored procedure Unable to cast object of type 'System.Data.SqlTypes.SqlDecimal' to type 'System.IConvertible' -

Calling GetGUIThreadInfo from Outlook VBA -

Obfuscating Python code? -