वर्तमान में मेरे पास कई परियोजनाओं का समाधान है जो अधिकतर कक्षाओं का उपयोग करते हैं। नतीजतन, यह मुझे दिखाई दिया कि प्रत्येक प्रोजेक्ट में कक्षा को दोहराने के बजाय समाधान में इन वर्गों वाली कक्षा पुस्तकालय को जोड़ना एक अच्छा विचार होगा।सी # आंशिक वर्ग
हालांकि, एक परियोजना के लिए मुझे कुछ परियोजनाओं के लिए कुछ अतिरिक्त गुणों की आवश्यकता है जो उस परियोजना के लिए विशिष्ट हैं और कहीं और नहीं उपयोग किए जाएंगे। नतीजतन, मैंने सोचा कि मुझे इन गुणों को जोड़ने के लिए आंशिक कक्षाओं का उपयोग करना चाहिए। कुछ तो मैंने किया है इस तरह:
वर्ग पुस्तकालय में:
namespace MyClassLibrary
{
public partial class Book
{
public string Title { get; set; }
public string AuthorLast { get; set; }
public string AuthorFirst { get; set; }
public string Publisher { get; set; }
public string Edition { get; set; }
public string ISBN10 { get; set; }
public string ISBN13 { get; set; }
}
}
परियोजना में (MyProject):
namespace MyClassLibrary
{
public partial class Book
{
public string AdditionalProperty { get; set; }
}
}
मैं MyProject में MyClassLibrary संदर्भित किया है (एक सी # खिड़कियों फार्म एप्लिकेशन), हालांकि जब मैं इस वर्ग को कोडबेंड में फॉर्म के लिए उपयोग करने का प्रयास करता हूं तो मुझे निम्न त्रुटि मिलती है:
class MyClassLibrary.Book
Warning: The type 'MyClassLibrary.Book' in 'C:... (Project)' conflicts with the imported type 'MyClassLibrary.Book' in 'C:... (Class Library DLL)'. Using the type defined in 'C:...(project)'.
कोई विचार क्या मैं गलत कर रहा हूं या यदि मेरा पूरा दृष्टिकोण खराब है और मुझे कुछ और करना चाहिए?
धन्यवाद! मैं इसे व्युत्पन्न कक्षा के साथ आज़माउंगा ... अभी भी इस पर नया! – Andrew
उह ... नहीं, इसे "विरासत" कहा जाता है! –
@Steven तत्काल विवरण से स्पष्टता –