को समझने की कोशिश कर रहा हूं, मैं चरण-दर-चरण सीखने के लिए एक सरल तरीके से ईवेंट एग्रीगेटर पैटर्न को कार्यान्वित करने की कोशिश कर रहा हूं। लेकिन मुझे इसके कार्यान्वयन के बारे में बात करने वाली कोई पुस्तक या अच्छा वीडियो ट्यूटोरियल नहीं मिला।
मुझे अभी कुछ अच्छे लेख मिल गए हैं जैसे कि http://weblogs.asp.net/rashid/archive/2009/03/05/use-event-aggregator-to-make-your-application-more-extensible.aspx और http://martinfowler.com/eaaDev/EventAggregator.html पहला आलेख मुझे पैटर्न को समझने के लिए बहुत बड़ा है और दूसरा पूरा नहीं हुआ है :)।
तरह से मैं अपने वर्गों बनाया द्वारा:ईवेंट एग्रीगेटर पैटर्न
public class Member
{
public int ID { get; set; }
public string UserName { get; set; }
}
public class MemberService
{
public void CommentSubmited()
{
// increase member score and do some other logic.
}
}
public class Comment
{
public int ID { get; set; }
public string CommentBody { get; set; }
public Member ByMember { get; set; }
}
public class CommentService
{
public void SubmitNewComment(Member member, string commentBody, EventAggregator eventAggregator)
{
Comment comment = new Comment();
comment.ByMember = member;
comment.CommentBody = commentBody;
db.SaveComment(comment); // save comment to the db
//eventAggregator.GetEvent<CommentSubmited>.Fire();
}
}
public class EventAggregator
{
public void RegisterEvent()
{
}
public void RemoveEvent()
{
}
}
और क्या मैं चाहता हूँ एक सामान्य तरीके बनाने के लिए इतना है कि जब कभी एक नई टिप्पणी बनाया सक्रिय करने के लिए CommentSubmited()
तरीका है।
मैं इसे सामान्य बनाना चाहता हूं क्योंकि बाद में अधिक सेवा होगी जैसे कि रेट सेवा, प्रश्न सेवा, .... और प्रत्येक के पास सदस्य सेवा वर्ग में XXXSubmited()
विधि होगी।
आशा है कि आप समझ जाएंगे कि मैं क्या सीखना चाहता हूं, मुझसे पूछें कि क्या आप मुझे चीजों को और स्पष्ट करना चाहते हैं।
नोट मैंने Generic Delegates topic की जांच की और सोचा कि इससे मुझे इस मुद्दे में मदद मिल सकती है, लेकिन मैं इसे वांछित नहीं कर सका।
लेख अच्छा है, लेकिन मैं कल्पना नहीं कर सकता कि कैसे ISubject और विषय दिखेंगे, उन्होंने उन्हें अपने उदाहरण में नहीं लिखा था। –
यदि कोई यहां पर ठोकर खाता है, तो अमृत ने इब्यूजेक्ट ढूंढने पर पोस्ट किया और किसी ने इंगित किया कि वे प्रतिक्रियाशील एक्सटेंशन में हैं: http://stackoverflow.com/questions/3439419/how-isubject-and-subject-will-look-like- इन-नमूना-और-नमूना-उपयोग-टी – JohnMetta