从转发器 ASP.net C# 检索数据
本文关键字:检索 数据 net 转发器 ASP | 更新日期: 2024-11-07 04:28:33
我正在尝试从中继器中检索一些数据,最终目标是将一堆数据发送到表中。
我正在使用以下内容来访问中继器,但是"FindControl"带有下划线:
String prodName = ((Literal)Repeater1.ItemTemplate.FindControl("LitProdName")).Text;
但是我收到警告:
"错误 1 'System.Web.UI.ITemplate' 不包含 'FindControl' 的定义,并且找不到接受类型为 'System.Web.UI.ITemplate' 的第一个参数的扩展方法 'FindControl' (您是否缺少 using 指令或程序集引用? C:''Users''User''Desktop''WLL''WLL''ProductDetails.aspx.cs 62 68 WLL"
完整的方法如下:
public void AddToBasket()
{
{
//String prodName = "Test";
String prodName = ((Literal)Repeater1.ItemTemplate.FindControl("LitProdName")).Text;
String prodID = Request.QueryString["productID"];
String userName = User.Identity.Name;
String size = "17.5";
int price = 10;
{
var basket = new Basket();
basket.User = userName;
basket.ProductID = Convert.ToInt32(prodID);
//basket.ProductName = prodName;
basket.Size = size;
basket.Price = price;
using (ProductContext _db = new ProductContext())
{
// By default, uses deferred execution for performance (doesn't get the data until it uses it)
// Calling ToList gets the data immediate
_db.Baskets.Add(basket);
_db.SaveChanges();
}
}
}
}
你应该做类似的事情
foreach(RepeaterItem item in Repeater.Items)
{
var lit = item.FindControl("id");
//code
}
由于控件位于中继器的项中,而不是项模板中。