Asp.net mvc3 UserControl Path error: Невозможно использовать начальный .. для выхода выше верхнего каталога - PullRequest
1 голос
/ 06 февраля 2012

У меня есть решение, которое содержит 2 проекта.В первом я реализовал пользовательские элементы управления и хочу использовать их во втором проекте.Я публикую первый проект в DomaineName, а второй - в DomaineName/Directory

Это решение ASP.net MVC3, поэтому я запрограммировал помощника для добавления элементов управления, подобных этой ссылке http://malvinly.com/2011/02/28/using-web-forms-user-controls-in-an-asp-net-mvc-project/

 public static HtmlString RenderControl<T>(this HtmlHelper helper, string path, Action<T> action) where T:UserControl
 {
        Page page= new Page();

        T control = (T)page.LoadControl(path);
        page.Controls.Add(control);

        if (action != null)
        { action(control); }

        using( StringWriter sw= new StringWriter())
        {
            HttpContext.Current.Server.Execute(page,sw,false);
            return new HtmlString(sw.ToString());
        }
}

На главной странице второго проекта я использую помощника:

Html.RenderControl<BackOffice.Controls.widgetRecentComment>("../../Controls/widgetRecentComment.ascx")

Но появляется эта ошибка:

Невозможно использовать ведущий .. для выхода надtop directory

И я не могу использовать ~, потому что мои пользовательские элементы управления находятся в DomaineName, а не DomaineName/Directory

Можете ли вы мне помочь, пожалуйста?

1 Ответ

0 голосов
/ 06 февраля 2012

Это параметр в IIS, где он не позволяет получить доступ к файлам вне корня приложения, используя .. в имени файла.

Если у вас есть контроль над IIS на сервере, вы можете изменить этот параметр, иначе вы просто не сможете использовать элементы управления из другого приложения.

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