Я не уверен насчет перезапуска сайта, но по крайней мере использование .NET MVC очень удобно, и я не заметил этой проблемы перезапуска, и, если происходит, как часто вам нужно обновлять файлы resx? Для больших проектов я использую для создания решения с несколькими проектами, один для локализации, что-то вроде этого:
- MyApp.Localization
- Модель
- Страница
- File1.resx
- MyApp.Core
- MyApp.Web
Затем в веб-проекте я добавляю ссылку на проект Localization и использую его как
@MyApp.Localization.Model.Customer.CustomerName
@MyApp.Localization.Page.About.PageTitle
@MyApp.Localization.File1.Paragraph1
Каждый раз, когда я изменяю переведенный текст, я либо загружаю обновленный файл .dll, либо копирую файлы .resx.
ПРИМЕЧАНИЕ. Вам необходимо установить для файлов resx значение PUBLIC, чтобы к ним можно было обращаться строго по типу.