【发布时间】:2015-03-30 18:08:48
【问题描述】:
我正在尝试从后面的代码中写入变量,但被告知“名称 'X' 在当前上下文中不存在。”
当我搜索此错误时,我发现它们应该在类级别声明为 public 或 protected,我已经这样做了。
我尝试在 default.aspx 中写入变量:
<%=metaRedirect%>
或
<%#metaRedirect%>
我的default.aspx.cs如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace go
{
public partial class _default : System.Web.UI.Page
{
protected string message1 = "";
protected string url = "";
protected string shortCode = "";
protected string jsRedirect = "";
protected string metaRedirect = "";
protected void Page_Load(object sender, EventArgs e) {
//do stuff
}
}
编辑:我也尝试过这样声明它们:
public partial class _default : System.Web.UI.Page
{
protected string message1 { get; set; }
protected string url { get; set; }
protected string shortCode { get; set; }
protected string jsRedirect { get; set; }
protected string metaRedirect { get; set; }
没有区别。
编辑 2:我是否可能在 .aspx 文件的第一行中遗漏了某些内容?我有:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="default.aspx.cs" %>
【问题讨论】:
-
设为公共财产
-
尝试将其设为属性(添加
{get; set;})而不是字段。 -
我也试过了。我会再做一次,看看它是否有所作为并更新。
标签: c# asp.net code-behind