我目前正在开发一个小程序,它从mongoDB获取数据并将其与其他数据进行匹配。我的程序当前正在打印出数据,但它需要添加一个带有唯一ID的<asp:button />
,以便我可以保存每个产品的数据。
这是我的代码:
public void showCoolers_Click(object sender, EventArgs e)
{
var items = "";
var connectionString = "mongodb://localhost:27017/";
var mongoClient = new MongoClient(connectionString);
MongoServer server = mongoClient.GetServer();
MongoDatabase database = server.GetDatabase("mydb");
MongoCollection<cpuCoolers> collection = database.GetCollection<cpuCoolers>("cpucoolers");
foreach (cpuCoolers parts in collection.FindAll())
{
String _id = parts._id.ToString();
items = items + "<tr><td>" + parts.Aanbieder + "</td><td> " + parts.Productnaam + "</td><td>" + parts.Socket + "</td><td> " + parts.Geluidsterkte + "</td><td> " + parts.Prijs +"</td><td><asp:Button ID='x' runat='server' Text='Motherboard' CssClass='btn btn-block btn-primary'/></td></tr>";
}
lblProducts.Text = "<table><thead><tr><th>Provider</th><th>Productname</th><th>Socket</th><th>Sound production</th><th>Price</th><th>Add to MyPc!</th></thead>" + items + "</table>";
}
我通过更改我的aspx文件中lblProduct.Text
的内容来打印我的数据。如果我向它添加一个asp:按钮它没有显示,但是常规的Html按钮确实如此,为什么这样,是否有办法打印出一个asp:按钮?
答案 0 :(得分:0)
你不能按照你想要的方式渲染一个asp.net按钮,你需要使用常规的html按钮。
asp:按钮是asp.net在构建页面时解释的内容;当你执行_Click函数时,它在页面生命周期中为时太迟而无法呈现asp.net控件 - 所以HTML按钮是你在页面执行中唯一的选择。
以下是asp.net页面生命周期的概述,可以帮助您更好地理解它:
http://msdn.microsoft.com/en-us/library/ms178472%28v=vs.100%29.aspx