用于.aspx页面后面的代码的自定义命名空间

kri*_*tof 3 .net namespaces .net-2.0

我使用的是.NET2.0.假设有一个带有txtInput和btnSomeAction的简单aspx表单

   <asp:TextBox ID="txtInput" runat="server"></asp:TextBox>
   <asp:Button ID="btnSomeAction" runat="server" CommandName="SomeAction" Text="Do"/>
Run Code Online (Sandbox Code Playgroud)

然后在我有的表格背后的代码

Protected Sub btnSomeAction_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSomeAction.Click
    Dim s As String
    s = txtInput.Text
End Sub
Run Code Online (Sandbox Code Playgroud)

一切正常.

然后我想将代码添加到自定义命名空间中

Namespace mycustomnamespace
Run Code Online (Sandbox Code Playgroud)

这样做时我会得到一个编译器错误:

未声明名称'txtInput' - 就好像代码不再连接到页面一样

我是否需要修改aspx页面以包含命名空间?,部分类怎么样?

Tom*_*ter 7

我是否需要修改aspx页面以包含命名空间?,部分类怎么样?

是.在你的aspx文件的顶部你应该看到类似的东西

<%@ Page AutoEventWireup="false" Inherits="Blah.Foo.Bar" %>
Run Code Online (Sandbox Code Playgroud)

其中bar是代码隐藏中类的名称,而Blah.Foo是它的命名空间.您需要将其更改为

<%@ Page AutoEventWireup="false" Inherits="mycustomnamespace.Bar" %>
Run Code Online (Sandbox Code Playgroud)