我似乎找不到这个问题的答案。这是一个场景:我有一个使用C#的ASP.NET项目。我正在加载数据(用户名、电子邮件等)在sqlite数据库中使用C# (使用ADO)。我将把数据加载到App_Data文件夹中的类文件中的静态全局变量中。我需要能够在加载期间将用户名插入到页面上的ASP.NET标签中。
在PHP中,我会这样做:
<?php
function GetUserName() {
//code which retrieves username from db.
return username;
}
?>
<p>Here is the username: <?php echo GetUserName(); ?></p>
有人能解释一下这是怎么做到的吗?我是ASP.NET的新手。
下面是更多细节的更新。我试过你们的建议了。我的页面加载函数在一个名为RankPage.aspx.cs的文件中,下表在RankPage.aspx中。这个想法是列出我从数据库中检索到的一组用户。我加入“myLabel”只是为了测试它。现在,我没有在后面的代码中声明'myLabel‘,它错误地指出'myLabel’在当前上下文中不存在。如果我使用FindControl()函数声明'myLabel‘,我会得到一个运行时异常,'myLabel’没有被设置为一个对象的实例。
代码如下:
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
Label myLabel = this.FindControl("myLabel") as Label;
myLabel.Text = "my text";
}
}
<table>
<tbody>
<tr>
<th>Name</th>
<th>Score</th>
</tr>
<tr>
<td>name</td>
<td>Score</td>
</tr>
<!-- Current User -->
<tr>
<td><asp:Label id="currentUserName" runat="server"></asp:Label></td>
<td><asp:Label id="currentUserScore" runat="server"></asp:Label></td>
<td><asp:Label ID="myLabel" runat="server" /></td>
</tr>
<!-- End Current User -->
</tbody>
</table>
发布于 2011-03-17 05:28:56
如果你只是把代码放在页面上,通常代码后面会有一个自动生成的字段供你使用,如@Oded所示。
在其他情况下,您始终可以使用以下代码:
Label myLabel = this.FindControl("myLabel") as Label; // this is your Page class
if(myLabel != null)
myLabel.Text = "SomeText";
发布于 2011-03-17 05:27:25
在您的ASP.NET页面中:
<asp:Label ID="UserNameLabel" runat="server" />
在你的后台代码中(假设你使用的是C#):
function Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
UserNameLabel.Text = "User Name";
}
}
发布于 2016-12-19 02:17:29
我知道这是很久以前发布的,它已经被标记为已回答,但对我来说,选择的答案没有回答我以为用户在摆姿势的问题。在我看来,他正在寻找一种可以在ASP .Net中采用的方法,这种方法与他之前在php中执行的内联数据绑定相对应。
下面是他的php:
<p>Here is the username: <?php echo GetUserName(); ?></p>
下面是在ASP .Net中要做的事情:
<p>Here is the username: <%= GetUserName() %></p>
https://stackoverflow.com/questions/5331968
复制相似问题