asp.net Невозможно создать UserControl в классе - PullRequest
0 голосов
/ 26 января 2011

Моей конечной целью является создание UserControl в классе в моей папке App_Code и рендеринг HTML-кода из этого в строку.

Воспроизведение HTML может быть выполнено с использованием следующего примера: Как получить вывод HTML UserControl в .NET (C #)?

Мой вопрос:

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

public partial class Controls_MyUserControl : System.Web.UI.UserControl

Я зарегистрировал это в своем web.config

<add tagPrefix="UC" src="~/Controls/MyUserControl.ascx" tagName="MyUserControl" />

Я могу ссылаться на это на странице просто отлично

<UC:MyUserControl ID="MyUserControl1" runat="server" />

Тем не менее, когда я пытаюсь создать объектэтого типа элемента управления в классе (в моей папке app_code) он не позволяет мне.

Controls_MyUserControl dummy = new Controls_MyUserControl();

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

Любые идеи о том, что мне нужно сделать, чтобы пользовательский контроль мог быть создан в моем классе в папке app_code?

Я предполагаю, что мне нужно ссылаться на элемент управленияв «использовании» в верхней части, но я не уверен, что это будет.

Насколько я знаю, он не находится в пространстве имен (по крайней мере, в коде позади фактически пользовательских элементов управления нет пространства имен).Хотя я не уверен, наследует ли он один из System.Web.UI.UserControl.

Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 17 июля 2014

Предположим, у вас есть все пользовательские элементы управления в ~ / UserControls /

Затем к вашему коду добавьте следующее:

using YourSpaceName.UserControls;

Это установит ссылку на любой пользовательский элемент управления в этом месте.

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

0 голосов
/ 26 января 2011

Некоторые обходные пути, опубликованные Скоттом Аленом http://www.velocityreviews.com/forums/t119801-accessing-web-user-control-from-class-in-app_code-folder.html

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