0

将服务器端变量传递给客户端并不太粗糙

var Variable = '<%= ServerVaraible %>' 

ServerVaraible 是在代码隐藏中公开访问的东西,很容易

现在可以说我有一个静态类

namespace Server.Helpers
{
   public static class QueryStringConstants
     {
       public static string CARID = "carId";
     }
}

为什么我不能去:var Variable = '<%= Server.Helpers.QueryStringConstants.CARID %>'

如果我这样做,我会收到一条错误消息

'System.Web.HttpServerUtility' does not contain a definition for 'Helpers' and no extension method 'Helpers' accepting a first argument of type 'System.Web.HttpServerUtility' could be found 

我确信我要宣布一些事情,但我不是 100% 确定什么......

4

2 回答 2

0

我能够将您的类从 Server.Helpers 重命名为 ServerTest.Helpers,然后可以访问该值。我相信 Server 关键字是保留的,因此当您调用 Server.Helpers 时,它会尝试在不存在的 Server 对象上查找 Helpers 类。

于 2013-08-22T17:02:49.533 回答
0

Server表示属于您所在的类的属性 ( Page),因此存在命名冲突。要访问您的类以避免冲突,请使用global关键字,这会强制您使用完整的命名空间:

var Variable = '<%= global::Server.Helpers.QueryStringConstants.CARID %>'
于 2013-08-22T17:09:04.450 回答