javascript - 访问位于代码后面的变量时的 ASP.NET 编译错误

标签 javascript c# asp.net wcf

我在后面的代码中设置了一个变量:

public string loggedInUserId { get; set; }
protected void Page_Load(object sender, EventArgs e)
{
    loggedInUserID = User.Identity.GetUserId();
}

当我在 Debug模式下运行时,没问题,var 可以正确获取用户。

我有这段 Javascript,它从评级系统中获取一个值,然后调用 WCF 服务:

var loggedinuserid = "<%=loggedInUserId%>";
SaveRatingService.Save(score, walkID, loggedInUserID);

同样,本地运行良好。但是,当我发布到服务器并尝试访问页面时,我得到了这个:

enter image description here

完整错误日志:

CS1061: 'ASP.walks_walkdetails_aspx' does not contain a definition for 'loggedInUserId' and no extension method 'loggedInUserId' accepting a first argument of type 'ASP.walks_walkdetails_aspx' could be found (are you missing a using directive or an assembly reference?)

为什么要这样做?我已经尝试在 WalkDetails.aspx.designer.cs 文件中手动注册变量,但它提示说它已经注册了。

提前致谢。

最佳答案

“<%=this.loggedInUserId%>”末尾那个额外的“>”是什么;>

编辑: 好吧,既然你描述的问题只发生在你的部署服务器上(而不是在你的本地开发机器上),如果我是你,我自然会怀疑部署机器。

您是否有任何迹象表明您的部署已成功?您如何部署 - 您是手动将整个项目/解决方案复制到 wwwroot,还是只是使用 Visual Studio 的网络部署工具进行部署?因为看起来您的服务器端代码不包含“loggedInUserId”的定义。

如果您使用 Visual Studio 的部署工具,并且使用基于 Windows 的服务器作为部署目标 - 您能否验证您的项目生成的 DLL 是否已正确安装在服务器的 Windows\Assembly 文件夹中?

关于javascript - 访问位于代码后面的变量时的 ASP.NET 编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34723819/

相关文章:

javascript - 这个完整的 URL 是如何找到的?

javascript - Vim - 当代码在文字字符串中有括号时如何实现正确的缩进

javascript - onclick使用JS在新窗口中打开表格

javascript - Yii2 输入字段设置禁用取决于其他字段

c# - 如何将 DropDownList 列添加到 GridView?

c# - C#显示线程无效的跨线程访问问题

c# - 如何创建自定义关键字 C#

asp.net - 如何从 CSS 引用嵌入图像?

asp.net - 使用 AngularJS 和 Asp.Net MVC 上传带有 FormData 的多个文件

javascript - 在 jQuery 的 .each 函数中查找特定元素并用它做一些事情