Встроенные настройки электронной почты в приложении Windows - PullRequest
0 голосов
/ 29 декабря 2011

Я хочу знать, есть ли способ встроить настройки электронной почты в приложение Windows, кроме сохранения в файле app.confg. Настройки будут статическими, поэтому пользователю не придется изменять его во время выполнения.Насколько я знаю, мы можем сохранить его в файле ресурсов в виде строки, но как мне получить доступ к настройкам в моем коде?

Код:

string st = Properties.Resources.cubemail;
//SmtpSection smtpSection = ConfigurationManager.GetSection(st) as SmtpSection;
MailSettingsSectionGroup mMailSettings = 
    ConfigurationManager.GetSection(st) as MailSettingsSectionGroup;

mail.From = new MailAddress(mMailSettings.Smtp.From);

smtp.Host = mMailSettings.Smtp.Network.Host;
smtp.Port = mMailSettings.Smtp.Network.Port;
smtp.UseDefaultCredentials = mMailSettings.Smtp.Network.DefaultCredentials;
smtp.Credentials = new System.Net.NetworkCredential(
    mMailSettings.Smtp.Network.UserName, 
    mMailSettings.Smtp.Network.Password);

Ответы [ 2 ]

1 голос
/ 29 декабря 2011

Используйте документ XML для хранения настроек электронной почты, где вы можете открывать / обновлять документ XML в блокноте, например, в текстовом редакторе, или читать или обновлять, используя Linq To XML .

РЕДАКТИРОВАТЬ:

Если вы пометили XML-документ как встроенный ресурс, вы можете прочитать его с помощью метода Assembly.GetManifestResourceStream ().

Я предполагаю, что имя xml-документа Test.xml и создается в корневом каталоге с помощьюWindowApp пространство имен.

Test.xml

<?xml version="1.0" encoding="utf-8" ?>
<MySettings>
  <host>something.com</host>
</MySettings>

Чтобы прочитать ресурс,

Assembly assembly = Assembly.GetExecutingAssembly();
XDocument doc= XDocument.Load(assembly.GetManifestResourceStream("WindowApp.Test.xml"));
string host=doc.Root.Element("host").Value;
1 голос
/ 29 декабря 2011

Добавьте XML-файл в свой проект и пометьте этот файл как встроенный ресурс, вы можете поместить все настройки там

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...