类和可访问性问题asp.net
本文关键字:问题 asp net 访问 | 更新日期: 2023-09-27 18:07:01
我有一个小的类
public static class TSM
{
static string TokenID = "";
public static string GetTSM()
{
TokenID = new Guid().ToString();
return TokenID;
}
}
`GetTokenID `will return a string
我只是从我的aspx页面调用GetTokenID,如
<script language="javascript" type="text/javascript">
var token= <% =TSM.GetTSM() %>;
当我运行aspx页面时,我得到错误。
错误是
编译错误描述:在编译服务此请求所需的资源期间发生错误。请查看以下具体的错误细节,并适当修改您的源代码。
编译器错误信息:CS1002:;将
请告诉我哪里出错了。由于
您需要将此TSM类声明所在的名称空间引入Web页面的作用域:
<%@ Import Namespace="SomeNamespace" %>
...
<script type="text/javascript">
var token = '<%=TSM.GetTSM() %>';
</script>
或者完全引用:
<script type="text/javascript">
var token = '<%= SomeNamespace.TSM.GetTSM() %>';
</script>
或将其包含在web.config的<namespaces>
部分。
备注:注意<%=TSM.GetTSM() %>
周围的''
,因为在javascript中没有Guid类型。必须使用字符串
还要注意,由于这个静态字段的分配,您的服务器端代码不是线程安全的。此外,它将始终生成一个空指南。
如何改进它:
public static class TSM
{
public static string GetTSM()
{
return Guid.NewGuid().ToString();
}
}