В попытке иметь несколько сайтов с одним центральным набором представлений я создал внешнюю библиотеку с моими представлениями. Они всегда помечены как содержимое и копия.
Эта библиотека просмотров ссылается на мои веб-сайты и, таким образом, с компиляцией вы получите папку «Views» в папке с bin.
Тогда я сделал быстрый пользовательский ViewEngine так:Загрузить вид из папки bin?
public class CommonViewLocator: WebFormViewEngine
{
public CommonViewLocator()
{
MasterLocationFormats = new[] {
"~/bin/Views/{1}/{0}.master",
"~/bin/Views/Shared/{0}.master"
};
ViewLocationFormats = new[] {
"~/bin/Views/{1}/{0}.aspx",
"~/bin/Views/{1}/{0}.ascx",
"~/bin/Views/Shared/{0}.aspx",
"~/bin/Views/Shared/{0}.ascx"
};
PartialViewLocationFormats = ViewLocationFormats;
}
}
После запуска я получаю этот экран:
The view 'Index' or its master could not be found. The following locations were searched:
~/Views/Home/Index.aspx
~/Views/Home/Index.ascx
~/Views/Shared/Index.aspx
~/Views/Shared/Index.ascx
~/bin/Views/Home/Index.aspx
~/bin/Views/Home/Index.ascx
~/bin/Views/Shared/Index.aspx
~/bin/Views/Shared/Index.ascx
Что идет не так?
Кроме того, кажется странным, что папка с бинами имеет свои взгляды, любые другие предложения приветствуются.
Безопасность действительно была тем, о чем я думал. Но тогда я получу ошибку безопасности, я бы предположил. Htmlhelpers не вытащит меня из этого, так как у меня нет взгляда в первую очередь ... –
Что я подразумевал под предложением Htmlhelpers, так это то, что не помещайте представления в папку bin вообще, но имейте их визуализируется и возвращается из внешней библиотеки, если это возможно. –