2009-07-29 15 views
5

के साथ बड़े पैमाने पर ईमेल भेजें ASP.Net का उपयोग करके बड़े पैमाने पर ईमेल भेजने का सबसे अच्छा तरीका क्या है?ASP.Net

उदाहरण के लिए साइट व्यवस्थापक को अपनी सभी साइट के उपयोगकर्ताओं को ईमेल (उदा। न्यूजलेटर) भेजने की आवश्यकता है।

एएसपी.Net 3.5 और सी # के साथ ऐसा करने का सबसे अच्छा तरीका क्या है?

उत्तर

2

यदि मैं इसे स्वयं लिख रहा था, तो मुझे System.Net.Mail.SmtpClient क्लास का उपयोग करके डेटाबेस और लूप से ईमेल पते मिलेंगे।

कृपया, हालांकि, सुनिश्चित करें कि आप कैन-स्पैम अधिनियम से अवगत हैं और आप दिशानिर्देशों का पालन करते हैं।

+4

अनुभव से बोलना यह वास्तव में एक गरीब दृष्टिकोण है। –

+0

मैंने पहले इसका परीक्षण किया है, लेकिन अगर आप 100 से अधिक पते पर ईमेल भेजना चाहते हैं तो इसके बारे में मत सोचो! – Babak

+0

@ स्पेन्सर यदि आप एक असंतोषजनक राय सुनने जा रहे हैं, तो कम से कम कुछ विवरण प्रदान करें कि आप दिए गए उत्तर से असहमत क्यों हैं। –

1

इस लिंक को देखें >>>>Sending Mass Email using ASP.Net स्रोत वीबी.Net में है, लेकिन चूंकि एमएफसीएल समान है, इसलिए आप आसानी से सीएसएचआरपी में कोड बदल सकते हैं। हालांकि एएसपीएक्स हिस्सा वही रहता है।

+1

बीसीसी का उपयोग करना एक अच्छा तरीका है लेकिन मुझे नहीं लगता कि यह एक अच्छा विचार है यदि आप 1000 से अधिक पते पर ईमेल भेजना चाहते हैं। – Babak

+0

मैं इसे एक वोट देने जा रहा हूं क्योंकि प्रदर्शन दृष्टिकोण से, यह व्यक्तिगत ईमेल भेजने से शायद बेहतर है। इसके अलावा, @ बाबाकराज की टिप्पणी का उपयोग करके, एक निश्चित संख्या में प्रविष्टियों को बीसीसी सूची बनाने के लिए लूप का उपयोग करना बहुत मुश्किल नहीं होगा, फिर उसे भेजें और बाकी के साथ संयम करें। – David

9

ट्रॉय की टिप्पणी प्रति संपादित करें।

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

मैंने वास्तव में एक विंडोज सेवा विकसित की है जो बड़े पैमाने पर ईमेल भेजने को संभालती है। असल में एएसपी.Net में मैं विभिन्न डीबी रिकॉर्ड्स में एक अभियान और बैच नौकरी बनाता हूं और फिर प्राप्तकर्ताओं की एक सूची भी डालता हूं। एक बार नौकरी को पूरी तरह से डीबी में लिखा गया है, इसकी स्थिति बदल दी गई है ताकि विंडोज सेवा जानता है कि यह साथ आ सकता है और नौकरी को संसाधित करना शुरू कर सकता है। फिर एएसपी.Net साइट किसी भी समय रिकॉर्ड को देख सकती है कि यह निर्धारित करने के लिए कि सेवा कितनी दूर है।

+1

इस संदेश की कुंजी यह है कि कतार के लिए एक प्रक्रिया है और भेजने के लिए एक अलग प्रक्रिया है। मैंने एक ही दृष्टिकोण (पूरी तरह से वैध परिस्थितियों में!) का उपयोग किया है और बीमाकर्ता बड़ी संख्या में प्राप्तकर्ताओं की गणना करते समय यह संभावित समय-समय पर देता है। –

+0

+1 - मैंने यह वही दृष्टिकोण लिया है। प्रक्रिया को मजबूत होने के लिए आपको अच्छी त्रुटि प्रबंधन और पुनर्प्राप्ति होनी चाहिए, लेकिन यह एक अच्छी रणनीति है। –

+0

मैं इस बात से सहमत हूं कि एक बाहरी सेवा इसे स्वयं कोडिंग करने के लिए बहुत पसंद है। – David