C# 访问aspx页面中的代码隐藏方法变量
我在自定义详细视图中工作。我有一个程序页面,可以查看所有程序。当用户单击“更新”按钮时,用户将重定向到“管理程序”页面。“管理程序”页面包含从中获取所有行的方法C# 访问aspx页面中的代码隐藏方法变量,c#,asp.net,C#,Asp.net,我在自定义详细视图中工作。我有一个程序页面,可以查看所有程序。当用户单击“更新”按钮时,用户将重定向到“管理程序”页面。“管理程序”页面包含从中获取所有行的方法 public string ProgramsDetails() { using (SqlConnection con = new SqlConnection(str)) { string htmlStr = ""; SqlCommand cmd = con.CreateCommand();
public string ProgramsDetails()
{
using (SqlConnection con = new SqlConnection(str))
{
string htmlStr = "";
SqlCommand cmd = con.CreateCommand();
cmd.CommandText = " SELECT * from programs where ProgId=@ProgId";
cmd.Parameters.AddWithValue("@ProgId", "1");
con.Open();
SqlDataReader reader = cmd.ExecuteReader();
if (reader.Read())
{
int ProgId = reader.GetInt32(0);
string ProgTitle = reader.GetString(1);
string ProgBudget = reader.GetString(4);
string ProgStarDate = reader.GetString(5);
}
con.Close();
return htmlStr;
}
}
如何从.aspx页面访问变量?假设我想访问ProgTitle
我用过这种方法,但似乎不起作用
<%=ProjTitle%>
我想在文本框中显示每列的值
<div class="cmrs-panel-body no-padding">
<div class="cmrs-form-inline">
<div class="cmrs-form-row bordered">
<label class="cmrs-form-label">Program Code Name</label>
<div class="cmrs-form-item">
<input type="text" name="Code" class="large">
</div>
</div>
</div>
<div class="cmrs-form-inline">
<div class="cmrs-form-row bordered">
<label class="cmrs-form-label">Program Title</label>
<div class="cmrs-form-item">
<input type="text" name="Title" class="large" value="<%=ProgTitle %>">
</div>
</div>
</div>
<div class="cmrs-form-inline">
<div class="cmrs-form-row bordered">
<label class="cmrs-form-label">Program Description</label>
<div class="cmrs-form-item">
<textarea class="large"></textarea>
</div>
</div>
</div>
</div>
程序代码名
节目名称
程序描述
通常我会将html代码添加到方法中,但这是不可行的,所以我想获取变量值并在文本框中显示它
htmlStr+="<table><tr><td>"+ProgTitle+"</td></tr></table>";
htmlStr+=“”+ProgTitle+“”;
ProgTitle
必须在代码隐藏中声明为受保护
或公共
,才能从.aspx访问。更改您的代码如下
protected string ProgTitle;
public string ProgramsDetails()
{
using (SqlConnection con = new SqlConnection(str))
{
string htmlStr = "";
SqlCommand cmd = con.CreateCommand();
cmd.CommandText = " SELECT * from programs where ProgId=@ProgId";
cmd.Parameters.AddWithValue("@ProgId", "1");
con.Open();
SqlDataReader reader = cmd.ExecuteReader();
if (reader.Read())
{
int ProgId = reader.GetInt32(0);
ProgTitle = reader.GetString(1);
string ProgBudget = reader.GetString(4);
string ProgStarDate = reader.GetString(5);
}
con.Close();
return htmlStr;
}
}
然后,您可以在aspx代码中访问ProgTitle
<input type="text" name="Title" class="large" value="<%=ProgTitle %>">
如果不使用数据绑定,如何使用会话并分配变量,然后使用它。关于代码Behing:
SESSION.START();会话[“PjTitle”]=PrgTtile代码>
然后在aspx中使用:
可以在定义了ProjTitle
的.aspx代码中添加一部分吗?不能访问局部变量。只有全局变量才能被
@ekad answer访问。这解决了问题,但数据库返回的值没有显示在文本框中。您在代码背后的确切位置调用程序详细信息
方法?不,我的意思是您在哪里调用程序详细信息
方法?它是否在加载页面中?