Неизвестный тег сервера 'Creator: CoolComponent'
Если вы видите эту ошибку, это может быть обработано, что соответствующая сборка / пространство имен разрешена, однако класс / компонент CoolComponent делает не имеют необходимого атрибута набора инструментов.
В противном случае вы, вероятно, увидите ошибку, связанную с разрешением сборки / пространства имен.
эта ошибка, по-видимому, связана с компонентами, которые вы создали сами, и регистрируете их с помощью тег <% @ Register%>
Это различие (регистрация настраиваемого префикса тега на странице по сравнению с Web.config) является просто способом регистрации префикса тега для отдельной страницы (на практике - работает быстрее) по сравнению с глобальным.
Однако для целей отладки может быть лучше проверить в директиве страницы:
Откройте настраиваемый префикс тега Creator и проверьте предложенные (intellisense) теги:
<%@ Page ...%>
<%@ Register TagPrefix="Creator" Assembly="Creator.Foo" Namespace="Creator.Foo" %>
...
<html ...>
<body>
<form ... runat="server">
<Creator:ANYTHING_HERE_? />
</form>
</body>
</html>
Видите ли вы необходимый контроль? Любые другие элементы управления?
Затем попробуйте создать этот элемент управления в коде:
using System;
using System.Web.UI;
using Creator.Foo;
public partial class YOUR_PAGE_CLASS_HERE : Page {
protected void Page_Init(object sender, EventArgs e) {
CoolComponent c = new CoolComponent();
c.ID = "CoolControl";
Form.Controls.Add(c);
}
}
Вы видите этот класс? Можно ли создать его экземпляр и добавить в форму программно? Этот элемент управления отображается так, как должен?
Если вы правильно видите CoolComponent, перейдите к его определению (с помощью клавиши F12). Проверьте соответствующие атрибуты класса. Вы видите что-то связанное с ToolboxItem?
using System;
using System.ComponentModel;
using System.Web.UI.WebControls;
namespace Creator.Foo {
[ToolboxItem(true)]
public class CoolComponent : WebControl { }
}