ASP.NET Элемент управления восстановлением пароля с локализованным содержимым
-
03-07-2019 - |
Вопрос
Я работаю над простым приложением портала, используя ASP.NET элементы управления членством и входом в систему.Я хотел бы использовать элемент управления PasswordRecovery для отправки электронных писем, содержащих забытые пароли, однако мой портал требует локализации.У меня есть существующая система управления контентом, из которой я извлекаю локализованные строки, и я хотел бы связать элемент управления PasswordRecovery с этой системой.
Но, похоже, что элемент управления PasswordRecovery будет принимать ТОЛЬКО текстовый файл для тела электронного письма...свойство PasswordRecovery1.MailDefinition.BodyFileName
Я не хочу использовать файл на диске, я хотел бы использовать локализованный контент в моей CMS.
Есть ли какой-нибудь способ сделать это?Мне пришло в голову, что я мог бы использовать событие SendingMail для отправки моей собственной электронной почты через обычную систему.Пространство имен Net, но это кажется немного громоздким...
Есть какие-нибудь мысли?
Спасибо, Макс
Решение
Попробуйте обработать событие SendingMail элемента управления PasswordRecovery.В этом случае задайте свойства e.Message.Body и e.Message.Subject для вашего локализованного текста.
Другие советы
Нашел это, погуглив "Локализация имени файла тела".:
http://forums.asp.net/t/1118242.aspx:
Просто привяжите свойство к ключу в файле localresource вашей страницы.Файл локальных ресурсов страницы - это файл, который расположен в подкаталоге под названием app_localresources в каталоге вашей страницы .Просто использовать Visual студии "инструменты -> создать локальный ресурс" параметр в конструкторе для его создан для вас.
В этом файле создайте строку сопоставьте ключ / значение с чем-то вроде
Имя:Имя файла моего тела
Значение:myDefaultBodyFile.txt
Затем привяжите это к BodyFileName свойству элемента управления login с помощью что-то вроде
'>
Затем просто создайте локальный sattelite файлы ресурсов для других языков и сопоставьте эту пару ключ / значение в этих ресурсах с другими текстовыми файлами основного текста.
Кстати, если вы использовали visual Studio для создания файла ресурсов для вас, тогда привязка, возможно, была выполнена для вас автоматически.Просто найдите a "MyChangePasswordControlResource1.BodyFileName" ключ в файле ресурсов или что-то еще подобное.
С уважением, Хорхе