2010-02-01 33 views
11

thể trùng lặp:
Storing Smtp from email friendly display name in Web.ConfigCó cách nào để bao gồm địa chỉ email "tên hiển thị" trong phần tử smtp của tệp Web.config không?

Tôi đang làm việc trên một EmailSender, và tôi lấy địa chỉ email từ file Web.config của tôi. Tôi cũng muốn lấy một "tên hiển thị" cho email đó, từ cùng một phần nếu có thể, nhưng tôi không thấy một cách rõ ràng để làm điều này.

Trong file Web.config của tôi, tôi đã bao gồm một mặc định "từ địa chỉ email", như thế này:

<configuration> 
    <system.net> 
    <mailSettings> 
     <smtp from="[email protected]"><!-- no displayName attribute :(--> 
     <network ... /> 
     </smtp> 
    </mailSettings> 
    </system.net> 
</configuration> 

Trong EmailSender tôi, tôi có một cái gì đó như thế này:

 var smtpSection = ...; 
     var message = new MailMessage(); 
     message.From = new MailAddress(_settings.From, senderDisplayName); 

Có cách nào được khuyến nghị để lưu trữ senderDisplayName trong tệp web.config không?

  • Có một số cách để đưa nó vào trong thuộc tính from? Ví dụ:

    <smtp from="Automatic Mailer &lt;[email protected]&gt;"> 
    
  • Hoặc nó cần phải là yếu tố tùy chỉnh trong appSettings?
  • Hoặc có cách nào khác không?

Trả lời

0

Bạn có phải kéo địa chỉ email v.v. từ web.config không? Tại sao không đặt nó trong EmailSender?

Các constructor MailAddress cũng bao gồm một tình trạng quá tải cho phép tên hiển thị được xác định (New MailAddress (địa chỉ, displayName). Hầu hết các khách hàng email hiển thị tên hiển thị, nếu có, thay vì địa chỉ email.

http://www.4guysfromrolla.com/articles/101707-1.aspx

+0

tôi sẽ thích nó trong Web.config vì thông tin có thể thay đổi (ví dụ, mọi người có thể nghĩ rằng họ đang nhận được thư rác với tên hiện tại - có thể cần phải thử những ý tưởng khác). Tóm lại: Tôi có thể cần thay đổi thông tin sau khi triển khai. – devuxer

0

Cá nhân, tôi đặt nó trong Web.Config trong phần AppSettings, vì phần cài đặt smtp không cung cấp một nơi cho nó.

Các vấn đề liên quan