मेरे पास एक C # वर्ग है जो एक वेब सामग्री प्रबंधन प्रणाली में एक सामग्री प्रकार का प्रतिनिधित्व करता है।
हमारे पास एक फ़ील्ड है जो वेब सामग्री संपादक को ऑब्जेक्ट प्रदर्शित करने के लिए एक HTML टेम्पलेट दर्ज करने की अनुमति देता है। यह मूल रूप से HTML स्ट्रिंग में ऑब्जेक्ट प्रॉपर्टी वैल्यू को प्रतिस्थापित करने के लिए हैंडलबार सिंटैक्स का उपयोग करता है:
<h1>{{Title}}</h1><p>{{Message}}</p>
एक वर्ग डिजाइन के नजरिए से, क्या मुझे एक संपत्ति या विधि के रूप में स्वरूपित HTML स्ट्रिंग (प्रतिस्थापन के साथ) को उजागर करना चाहिए ?
संपत्ति के रूप में उदाहरण:
public class Example
{
private string _template;
public string Title { get; set; }
public string Message { get; set; }
public string Html
{
get
{
return this.ToHtml();
}
protected set { }
}
public Example(Content content)
{
this.Title = content.GetValue("title") as string;
this.Message = content.GetValue("message") as string;
_template = content.GetValue("template") as string;
}
private string ToHtml()
{
// Perform substitution and return formatted string.
}
}
विधि के रूप में उदाहरण:
public class Example
{
private string _template;
public string Title { get; set; }
public string Message { get; set; }
public Example(Content content)
{
this.Title = content.GetValue("title") as string;
this.Message = content.GetValue("message") as string;
_template = content.GetValue("template") as string;
}
public string ToHtml()
{
// Perform substitution and return formatted string.
}
}
मुझे यकीन नहीं है कि एक डिज़ाइन के दृष्टिकोण से इसे कोई फर्क पड़ता है या क्या ऐसे कारण हैं कि एक दृष्टिकोण दूसरे की तुलना में बेहतर है?