我感觉我错过了什么,但我找不到一种从我的代码后台文件传递简单变量到.aspx页面的方法。
在代码后台中:
Dim test As String = "test"
在我的aspx页面中我尝试:<%=test %>
这给了我以下错误:Error 2 'test' is not declared. It may be inaccessible due to its protection level
我是不是忘记了什么?
将test
声明为属性(在类级别),而不是局部变量,然后像您当前在标记中使用的方式一样引用它(aspx)。
VB.NET 10(自动属性):
Protected Property test As String = "Test"
VB.NET 10之前的版本不支持自动属性。
Private _test As String
Protected Property Test As String
Get
Return _test
End Get
Set(value As String)
_test = value
End Set
End Property
使用protected修饰符。
Protected test As String = "test"
尝试将其更改为...
Public test As String = "test"
那么它应该可以工作。
从这里开始 http://msdn.microsoft.com/en-us/library/76453kax.aspx ...
在模块级别上,没有任何访问级别关键字的 Dim 语句等同于一个 Private 声明。然而,您可能希望使用 Private 关键字使您的代码更易于阅读和解释。
声明变量时使用protected
或者public
关键字:
Protected test As string = "test"
在 .aspx 文件中:
<%=test%>
将代码更改为
Protected test As String = "test"
(在.vb文件中)
<%=Me.test%>
(位于标记内部)
编辑:根据@Ahmed的建议,最好创建一个属性而不是提供的变量。