是否可以在以下点在aspx用户控制页面的html中设置断点 (例如这里给出的代码):
< repeater blah blah >
< span > <%# DataBinder.Eval(Container.DataItem, "myvalue") % > < / span > (break here)
< / repeater etc >
我使用的是Visual Studio 2008
我知道我可以查看在调试模式下绑定到转发器控件的数据视图,但我更愿意看到这种情况“因为它发生”,因为在某些情况下,我会收到错误,其中转换器无法正常工作。所以我想我问我们是否可以进入并在运行时“看到”循环中的Container.DataItem
值。
答案 0 :(得分:4)
您可以在代码隐藏文件中的转发器控件上为ItemDataBound
添加事件处理程序。
在通过的RepeaterItemEventArgs
中,您可以访问e.Item.DataItem
,这与代码中的Container.DataItem
相同。使用调试器的即时窗口,您可以测试值。
E.g:
Page.ascx
<asp:Repeater runat="server" ID="Repeater1" OnItemDataBound="Repeater1_Databound">
...
</asp:Repeater>
Page.ascx.cs
protected void Repeater1_Databound(object sender, RepeaterItemEventArgs e)
{
// Breakpoint here - use immediate window or
// watch to examine contents of the 'item' variable.
var item = e.Item.DataItem;
}
答案 1 :(得分:0)
不,你无法调试设计视图。 OnItemDataBound可用于在后面的代码中进行调试。