Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从另一个页面ASP.net访问页面代码隐藏中声明的命名空间_Asp.net_Vb.net - Fatal编程技术网

从另一个页面ASP.net访问页面代码隐藏中声明的命名空间

从另一个页面ASP.net访问页面代码隐藏中声明的命名空间,asp.net,vb.net,Asp.net,Vb.net,我有一个名为default.aspx的页面,其中代码隐藏文件default.aspx.vb包含其部分类和另一个名为MyNamespace的命名空间。因此default.aspx.vb文件如下 Imports mynamespace Partial Class Default2 Inherits System.Web.UI.Page End Class Namespace mynamespace Public Class status Public id, s

我有一个名为default.aspx的页面,其中代码隐藏文件default.aspx.vb包含其部分类和另一个名为MyNamespace的命名空间。因此default.aspx.vb文件如下

Imports mynamespace

Partial Class Default2
    Inherits System.Web.UI.Page

End Class

Namespace mynamespace
    Public Class status
        Public id, score As Integer
        Public names As String
        Public Function checkscore() As Integer
            Return 1
        End Function
    End Class

End Namespace

但是我如何在另一个页面代码(比如mypage.aspx)中访问相同的名称空间呢?或者这是不允许的?

你绝对可以这样做。由于代码隐藏文件只是一个类,因此可以从
mypage.aspx
code隐藏文件创建该类的实例并使用它:-

Dim cust As New Customer()
Dim result1 As Integer = cust.checkscore()
但我强烈建议您创建一个单独的类,而不是将其与代码隐藏类混合

或者这是不允许的

正如我已经解释过的,这里还有一些关于代码隐藏文件的内容。因为它只是一个类,所以您可以在同一个namspace或另一个名称空间(正如您已经创建的)的代码隐藏文件中拥有任意数量的类。所以问题是哪个类实际上充当类后面的代码?答案在aspx页面的
页面指令中:-

<%@ Page Language="VB" AutoEventWireup="true" CodeBehind="Default2.aspx.vb" 
    Inherits="mynamespace.Default2" %>

在这里,
codebeahind
属性通知aSP.NET framework有关代码隐藏文件的信息,
继承
属性通知与aspx页面关联的实际类文件


我希望这能消除您的疑虑。

访问命名空间是什么意思?你是说那个类中有什么特殊的方法吗?@RahulSingh完全正确。。我是指该名称空间中的一些成员。