难以将c#变量转换为aspx javascript值

时间:2013-07-17 20:33:43

标签: c# javascript asp.net

我很难将c#变量转换为我的aspx文件中的javascript值。这就是我目前所拥有的:

LetsChat.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Microsoft.AspNet.SignalR.Hubs;

public class Default
{
    public string pass = "password";
}

namespace SignalRChat
{
    [HubName("myChatHub")]
    public class LetsChat : Hub
    {
        public void send(string message)
        {
            Clients.All.addMessage(message);
        }
    }
}

Chat.aspx

<script type="text/javascript">
    var pass = "<%=pass%>";
</script>

为什么它给我以下编译错误?:

  

当前上下文中不存在名称“pass”

1 个答案:

答案 0 :(得分:4)

chat.aspx中的标记只能看到自己类的成员 - 通常是代码隐藏中包含的部分类。因此,您无法看到pass变量,但可以使用:

var pass = "<%=new Default().pass%>";

或者,您可以将pass设为静态变量:

public class Default
{
    public static string pass = "password";
}