Зарегистрируйте UserControl в другом UserControl с помощью ASP.NET MVC 2 - PullRequest
0 голосов
/ 11 декабря 2010

Я хочу зарегистрировать UserControl в другом UserControl, но у меня есть некоторые ошибки, такие как:

Элемент управления '4_txtCount' типа 'NumbericTextBox' должен быть помещен в тег формы с помощью runat = server.

Описание: Произошло необработанное исключение во время выполнения текущего веб-запроса.Пожалуйста, просмотрите трассировку стека для получения дополнительной информации об ошибке и о том, где она возникла в коде.

Сведения об исключении: System.Web.HttpException: Элемент управления '4_txtCount' типа 'NumbericTextBox' долженбыть помещенным в тег формы с помощью runat = server

И когда я добавляю сторону сервера из тега в свой UserControl, я никогда не получаю сообщение об ошибке.

Обратите внимание, что я ужедобавить тег формы на стороне сервера в моем представлении ...

Как мне зарегистрировать и использовать UserControl в другом элементе управления UserControl, не добавляя тег формы на стороне сервера в UserControl?

Спасибо, Afshin

Ответы [ 2 ]

2 голосов
/ 11 декабря 2010

Под "UserControl" я предполагаю, что вы имеете в виду частичное представление. Одним из элементов управления, которые вы используете в частичном представлении, является элемент управления веб-форм ASP.NET. Вы не можете использовать элемент управления, который требует обратной передачи. Для просмотра MVC не требуется форма runat = server tag. Если элемент управления, который вы пытаетесь использовать, не предназначен для использования в среде MVC, рассмотрите возможность создания маршрута с использованием WebForm Routing (System.Web.Routing) для этой страницы, в частности:

http://msdn.microsoft.com/en-us/library/cc668202(v=vs.90).aspx

Вы можете изменить конструктор RouteHandler так, чтобы он принимал объект, который вы заполнили необходимыми данными. Словарь ViewData недоступен в этом контексте.

1 голос
/ 11 декабря 2010

Вам не нужен тег form внутри пользовательского элемента управления.

Просто убедитесь, что полученная страница, на которой размещен пользовательский элемент управления, имеет тег form, окружающий пользовательский элемент управления.

Тег form может быть размещен на странице ASPX или главной странице страницы ASPX.

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