【问题标题】:How to specify a namespace for an ASP.net UserControl?如何为 ASP.net UserControl 指定命名空间?
【发布时间】:2012-06-03 02:52:14
【问题描述】:

我在 ASP.net 中有一个UserControl

GrobSelector.ascx.cs

...
public partial class GrobSelector : System.Web.UI.UserControl
{
   ...

我想将这个类包装在一个命名空间中:

GrobSelector.ascx.cs

...
namespace GrobSelectorNamespace
{
   public partial class GrobSelector : System.Web.UI.UserControl
   {
      ...
   ...       
}

除了现在代码编译失败:

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

确保此代码文件中定义的类与“继承”属性匹配,并且它扩展了正确的基类(例如 Page 或 UserControl)。

将 ASP.net UserControl 放入命名空间的正确方法是什么?


奖金聊天

前面的代码文件包含:

GrobSelector.ascx

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="GrobSelector.ascx.cs" 
    Inherits="GrobSelector"  %>

阅读奖励

【问题讨论】:

    标签: asp.net user-controls namespaces


    【解决方案1】:

    您收到的错误解释正确。

    您应该更改“in-front”文件,使Inherits 属性考虑到控件类所在的命名空间:

    <%@ Control Language="C#" AutoEventWireup="true" CodeFile="VacationSelector.ascx.cs" 
        Inherits="VacationSelectorNamespace.VacationSelector"  %>
    

    【讨论】:

    • 我认为 VacationSelector.ascx/VacationSelector.ascx.cs 已经解决了这个问题!
    • 这可能很棘手。但请记住,您不一定必须与实际文件具有相同的类名。也就是说,您可以拥有一个 VacationSelector.ascx.cs,其类实际上是“foo”,这使得包含该类的完全限定名变得更加必要。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-23
    • 2014-03-14
    • 1970-01-01
    • 1970-01-01
    • 2021-05-29
    • 2017-02-22
    • 1970-01-01
    相关资源
    最近更新 更多