ASP.NET Serveur de contrôle d'erreur: serveur Inconnu tag

C'est ma première tentative de construire un ASP.NET contrôle de serveur. Écrire le code de contrôle a été simple, mais j'ai couru dans un barrage routier en essayant d'obtenir le contrôle sur une page web.

J'ai construit le contrôle dans un projet et de le référencer dans l'autre. Dans ce deuxième projet, j'ai le contrôle dans la boîte à outils et glissé/déplacé le contrôle sur la page. Je peux compiler le projet web sans erreur, mais quand j'ai accédez à la page, j'obtiens cette erreur:

Analyseur Message d'Erreur: serveur Inconnu tag 'cc1:StandardControl1'.

De faire une certaine recherche, autour de moi, je vois d'autres personnes ayant ce problème, pour diverses raisons, mais aucune ne semble s'appliquer à ma situation. Une solution a été d'ajouter de l'assemblée sur le registre de la balise, mais ce n'est pas un problème avec ma page:

<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="another.aspx.vb" Inherits="Educate.another" %>
<%@ Register Assembly="ServerControlSandbox" Namespace="ServerControlSandbox" TagPrefix="cc1" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <cc1:StandardControl1 runat="server">
        </cc1:StandardControl1>
    </div>
    </form>
</body>
</html>

Une autre solution, a déclaré à l'ajouter sur le web.config, encore une fois avec l'assemblée de l'attribut. Mais avec cela dans mon web.config que j'ai toujours l'erreur:

<controls>
        <add tagPrefix="cc1" namespace="ServerControlSandbox" assembly="ServerControlSandbox"/>
                <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
                <add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
            </controls>

Je pense il y a quelque chose de simple, je suis absent, mais je ne vois rien de mal, à en juger par les exemples que j'ai regardé. Quelqu'un aurait-il des idées? Merci.

Aussi, ici, est le code de contrôle:

namespace ServerControlSandbox
{
    [DefaultProperty("Text")]
    [ToolboxData("<{0}:StandardControl1 runat=server></{0}:StandardControl1>")]
    public class StandardControl : WebControl
    {
        [Bindable(true)]
        [Category("Appearance")]
        [DefaultValue("")]
        [Localizable(true)]
        public string Text
        {
            get
            {
                String s = (String)ViewState["Text"];
                return ((s == null) ? "[" + this.ID + "]" : s);
            }

            set
            {
                ViewState["Text"] = value;
            }
        }

        protected override void RenderContents(HtmlTextWriter output)
        {
            output.Write(Text);

            string block = "<p>Here is some text.</p>";
            output.Write(block);            
        }
    }
}

OriginalL'auteur hermes the goat | 2011-12-16