Организация ASP. NET проекта веб-приложения - PullRequest
0 голосов
/ 21 января 2020

Как обновить ссылки на пользовательские элементы управления после помещения файлов ascx и aspx в разные папки?

Я не привык работать с ASP. NET проектами Web Forms, но я унаследовал это. Когда я впервые получил этот проект, каждый файл находился прямо под корнем; папок нет вообще. Я начал помещать файлы в папки и обновлять пути.

Однако, когда я пытаюсь загрузить пользовательский элемент управления, я получаю эту ошибку:

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

Мой пользовательский элемент управления находится по адресу:

myProject\controls\Widget.asxc

Моя страница расположена по адресу:

myProject\Pages\Activity\AST_Page.aspx

Разметка от AST_Page.aspx:

<%@ Register TagPrefix="tf" TagName="Cost" Src="..\..\controls\Widget.ascx" %>

My понимание:

  • Когда пользователь переходит на AST_Page.aspx, текущий путь равен myProject\Pages\Activity\.
  • Начало пути с ..\..\ должно поставить меня на myProject\.
  • Поэтому ..\..\controls\Widget.ascx фактически указывает на myProject\controls\Widget.asxc.
  • Мой проект имеет доступ к my myProject\.

Если я изменяю ..\..\controls\Widget.ascx на ..\controls\Widget.ascx, я получаю другую ошибку о том, что не могу найти файл, что ожидается, поскольку Widget.ascx не находится под myProject\Pages\controls\.

1 Ответ

0 голосов
/ 22 января 2020

На странице появилась вторая проблема. У меня было "~ /../../" в атрибуте sr c; скорее всего из-за агрессивного поиска и замены.

...