Ich hatte ein VS2008-Projekt, das diese Warnung anzeigt, und ich konnte nirgendwo eine Lösung finden - vielleicht ist mein Google-Fu schwach.
In jedem Fall besteht die offensichtliche Lösung darin, sicherzustellen, dass TagName der Name der Kontrollklasse ist.
In meinem Beispiel wurde folgende Warnung angezeigt:
<%@ Register Src="~/path/to/Control.ascx" TagName="tagName" TagPrefix="tagprefix" %>
<tagprefix:tagName runat="server" id="controlID" />
Aber es zu ändern:
<%@ Register Src="~/path/to/Control.ascx" TagName="Control" TagPrefix="tagprefix" %>
<tagprefix:Control runat="server" id="controlID" />
behebt es
YMMV.
Das klingt wie ein klassischer Neuaufbau Ihrer Lösung und das Problem "Schließen und erneutes Öffnen von Visual Studio".
Es ist möglich, dass dies auch auf ein ähnliches Problem zurückzuführen ist, das ich unter Auflösen von "Validation (): Das Element" xxxx "wird nicht unterstützt wird" in Visual Studio 2005/2008 .
Dies kann auch auftreten, wenn sich das Element, das Sie hinzufügen möchten, innerhalb der Tags eines anderen Elements befindet, in dem es sich nicht befinden sollte.
Zum Beispiel:
<asp:Button ID="button" runat="server" >
<asp:Repeater ID="repeater" runat="server"></asp:Repeater>
</asp:Button>
Oder in meinem Fall einen <asp:Repeater>
in einen <asp:UpdatePanel>
setzen und vergessen, es in den <ContentTemplate>
zu legen:
<asp:UpdatePanel ID="upPanel" runat="server">
<ContentTemplate>
<asp:Repeater ID="rep" runat="server">
</asp:Repeater>
</ContentTemplate>
</asp:UpdatePanel>
Dies kann offensichtlich auch der Fall sein, wenn der Namespace-Name in der .ascx-Datei nicht mit dem Namespace in der Datei ascx.cs (codebehind) übereinstimmt. Nur noch ein weiteres Problem.
Aus dem OP:
Die offensichtliche Lösung besteht darin, sicherzustellen, dass der TagName der Name der Kontrollklasse ist.
In meinem Beispiel wurde folgende Warnung angezeigt:
<%@ Register Src="~/path/to/Control.ascx" TagName="tagName" TagPrefix="tagprefix" %>
<tagprefix:tagName runat="server" id="controlID" />
Aber ändere es in:
<%@ Register Src="~/path/to/Control.ascx" TagName="Control" TagPrefix="tagprefix" %>
<tagprefix:Control runat="server" id="controlID" />
behebt es.
Ich stellte fest, dass das Problem behoben war, als ich die Build-Aktion für die .ascx-Datei von "content" in "compile" änderte und sie anschließend zurück änderte.
Überprüfen Sie, ob Sie sich möglicherweise auf ContentPlaceHolderID = "MainContent" auf Asp.net befinden. Platzieren Sie den Code daher auf einem neuen Platzhalter