Il mio controllo “non è consentita qui perché non si estende classe 'System.Web.UI.UserControl'”
-
13-09-2019 - |
Domanda
Quindi ho un altro noodle-scratcher (per me comunque).
Sto cercando di creare il mio controllo personalizzato in un CMS ho solo il codice sorgente parziale per (vale a dire i campioni il venditore ha fornito a me). Fondamentalmente Ho creato una chiamata DataDefinitionContent
classe che estende ControlBase
. Ora, da quello che posso raccogliere dai metadati, ControlBase
estende UserControl
, quindi avrei pensato ciò sarebbe senza un dramma. Qualcuno può far luce sul motivo per cui questo potrebbe non funzionare per me?
La mia Classe:
public partial class DataDefinitionContent : ControlBase, ICustomControl<DataDefinition>
{
... Stuff
}
ControlBase:
using System;
using System.Web.UI;
namespace CMS.Web
{
public class ControlBase : UserControl
{
... Stuff
}
}
Il mio file ascx:
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="DataDefinitionContent.ascx.cs"
Inherits="CMS.Admin.WebUI.CustomControls.DataDefinitionContent, CoA.Admin.WebUI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" %>
L'errore che sto ottenendo:
Messaggio parser di errore: 'CMS.Admin.WebUI.CustomControls.DataDefinitionContent, CoA.Admin.WebUI, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = null' non è consentita qui perché fa Non estendere classe 'System.Web.UI.UserControl'.
Linea 1: <% @ Control Language = "C #" AutoEventWireup = "true" Codebehind = "DataDefinitionContent.ascx.cs"
Soluzione
Prova a mettere la vostra classe parziale in
namespace CMS.Web
Altri suggerimenti
mi è stato sempre questo errore quando il nome della classe che stava estendendo la classe UserControl non era il nome usato in inclusione ASP. Ho fatto la modifica al nome della classe e riassegnato la soluzione. Il problema è stato risolto.