我希望能够在我的VB.net页面的代码隐藏中定义一些命名空间常量。
例如,
Namespace MyCompany
Namespace Pages
Partial Public Class Default
Inherits System.Web.UI.Page
Public Const PAGE_NAME As String = "Default.aspx"
End Class
End Namespace
End Namespace
我希望能够像......一样执行代码。
Response.Redirect(MyCompany.Pages.Default.PAGE_NAME)
但是,第二页不会编译。编译器错误是“'Pages'不是'MyCompany'的成员”。
任何想法。我在C#中做过同样的事情没有问题,但VB.Net给了我适合。
提前致谢, 杰森
答案 0 :(得分:1)
主要问题是您使用Default
尝试使用_Default
这是你的代码
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="MyCompany.Pages._Default" %>
<!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>
</div>
</form>
</body>
</html>
vb文件代码
Namespace MyCompany
Namespace Pages
Partial Class _Default
Inherits System.Web.UI.Page
End Class
End Namespace
End Namespace
第二档
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default2.aspx.vb" Inherits="MyCompany.Pages.Default2" %>
<!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>
<% Response.Redirect(MyCompany.Pages.Default2.PAGE_NAME)%>
</div>
</form>
</body>
</html>
第二个文件的代码
Namespace MyCompany
Namespace Pages
Partial Class Default2
Inherits System.Web.UI.Page
Public Const PAGE_NAME As String = "Default.aspx"
End Class
End Namespace
End Namespace