2009-04-29 28 views
15

Trong một thời gian, bây giờ tôi đã lưu trữ cài đặt kết nối và ứng dụng của mình trong một tệp bên ngoài và chỉ tham chiếu tệp đó qua web.config của tôi. Điều này hoạt động thực sự tốt vì nó cho phép tôi giữ các chuỗi kết nối và cài đặt ứng dụng riêng biệt. Điều này thực sự thuận tiện kể từ khi tôi tìm thấy trong quá trình phát triển, tôi thường sẽ thực hiện nhiều thay đổi đối với webconfig và tôi ghét phải quản lý các giá trị môi trường cụ thể mỗi lần tôi cần cập nhật web.config của mình.Lưu trữ SMTP bên ngoài Web.Config File

Có anyway tôi có thể đạt được điều này với các phần cấu hình SMTP trong web.config không.

Trả lời

28

Chắc chắn, bạn có thể sử dụng thuộc tính configSource.

Ví dụ:

<system.net> 
    <mailSettings> 
    <smtp configSource="MailSettings.config"/> 
    </mailSettings> 
</system.net> 

Sau đó đưa dữ liệu cấu hình mailSettings của bạn trong MailSettings.config

Vì vậy, sau đó tập tin MailSettings.config của bạn sẽ có cái gì đó như:

<network 
    host="relayServerHostname" 
    port="portNumber" 
    userName="username" 
    password="password" /> 

Cập nhật: có vẻ như nó có thể cần phải thực sự đi vào nút smtp để hoạt động bình thường, vì vậy tôi đã cập nhật mã trên thành indica te rằng - cùng một ý tưởng, chỉ có một điều này nên làm việc. :)

+0

Tuyệt! Tôi không biết bạn có thể làm điều đó! –

+0

Đây là một trong những tính năng ASP.NET mà tôi muốn tôi biết trước đó! – pyrocumulus

+0

Ahhh Tôi đã cố gắng này trước đây tôi đã chỉ quên để đặt nó bên trong nút system.net ... whooops .. Cảm ơn cho người đứng đầu lên. –

-2

Phần mềm của tôi lưu trữ nó trong sổ đăng ký, ngay cả trong quá trình sản xuất.

+1

Wow .... muốn SO được phép gán huy chương ..... ;-) – Doug

+0

Tại sao một ứng dụng web lưu trữ nội dung này trong sổ đăng ký? – UpTheCreek

+0

Vì chúng tôi có các phương pháp truy cập từ xa khác ngoài web. – Joshua

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