अगर मेरे पास इस तरह एक स्थितीय रिकॉर्ड है:

public record Version(int Major, int Minor);

ऐसा लगता है कि मैं केवल एक <summary> दस्तावेज़ीकरण प्रदान कर सकता हूँ, जैसे:

/// <summary>
/// Version record
/// </summary>
public record Version(int Major, int Minor);

क्या संक्षिप्त रिकॉर्ड सिंटैक्स रखते हुए Major और Minor गुणों (संभवतः कंस्ट्रक्टर तर्क भी) का दस्तावेजीकरण करना संभव है?

6
Danko Durbić 17 पद 2020, 16:45

2 जवाब

सबसे बढ़िया उत्तर

जैसा कि कैंटन7 बताता है कि यह अभी भी विकास के अधीन है

संपत्ति और मापदंडों का दस्तावेजीकरण करने के लिए अभी सबसे अच्छा समाधान संपत्ति को स्पष्ट रूप से परिभाषित करना है, जबकि रिकॉर्ड स्थिति को बनाए रखना है:

/// <summary>
/// Version record
/// </summary>
/// <param name="Major">Major constructor parameter</param>
/// <param name="Minor">Minor constructor paramater</param>
public record Version(int Major, int Minor)
{
    /// <summary>
    /// Major Property
    /// </summary>
    public int Major { get; init; } = Major;

    /// <summary>
    /// Minor property
    /// </summary>
    public int Minor { get; init; } = Minor;
}

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

11
Yair Halberstadt 17 पद 2020, 19:15

आप इसे इस तरह दस्तावेज कर सकते हैं:

/// <summary>
/// Version record
/// </summary>
/// <param name="Major">Major version</param>
/// <param name="Minor">Minor version</param>
public record Version(int Major, int Minor);

और फिर आपके पास इन-कोड का उपयोग करते समय प्रलेखन है:

Documentation

1
Gambi 17 पद 2020, 17:20