ASP.NET PasswordRecovery Control с локализованным контентом - PullRequest
3 голосов
/ 21 октября 2008

Я работаю над простым приложением портала, использующим членство в ASP.NET и элементы управления входом. Я хотел бы использовать элемент управления PasswordRecovery для отправки электронных писем, содержащих забытые пароли, однако мой портал требует локализации. У меня есть существующая система управления контентом, из которой я извлекаю локализованные строки, и я хотел бы связать элемент управления PasswordRecovery с этой системой.

Но, похоже, что элемент управления PasswordRecovery примет ТОЛЬКО файл .txt для тела письма ... свойство PasswordRecovery1.MailDefinition.BodyFileName

Я не хочу использовать файл на диске, я хотел бы использовать локализованный контент в моей CMS.

Есть ли способ сделать это? Мне пришло в голову, что я мог бы использовать событие SendingMail для отправки своей СОБСТВЕННОЙ электронной почты через обычное пространство имен System.Net, но это выглядит довольно грязно ...

Есть мысли?

Спасибо, Max

Ответы [ 2 ]

4 голосов
/ 24 октября 2008

Попробуйте обработать событие SendingMail элемента управления PasswordRecovery. В этом случае установите свойства e.Message.Body и e.Message.Subject для вашего локализованного текста.

0 голосов
/ 21 октября 2008

Нашел это путем поиска в Google "BodyFileName localization":

http://forums.asp.net/t/1118242.aspx:

Просто свяжите свойство с ключом в файл локальной страницы вашей страницы. файл локального ресурса страницы - это файл расположенный в подкаталоге под названием app_localresources в вашей странице каталог. Просто используйте визуальную студию "инструменты -> создать локальный ресурс" вариант в представлении дизайна для него будет создан для вас.

В этом файле создайте строку пара ключ / значение с чем-то вроде

Имя: myBodyFileName

Значение: myDefaultBodyFile.txt

Затем привяжите это к BodyFileName свойство контроля входа с что-то вроде

'>

Тогда просто создайте местный спутник файлы ресурсов для других культур и отобразить эту пару ключ / значение в тех ресурсы для других текстовых файлов.

Кстати, если вы использовали visual studio создать файл ресурсов для вас, тогда привязка могла быть сделана для тебя автоматика. Просто искать "MyChangePasswordControlResource1.BodyFileName" введите файл ресурса или что-то похоже.

С уважением, Хорхе

...