SqlDataReader &用户控制
我尝试使用 userControl 显示 SqlDataReader 数据。
在主页
public SqlDataReader Data2;
...
<uc1:WebUserControl ID="WebUserControl1" RData1="<%=Data2 %>" runat="server" />
和用户控件中
Repeater1.DataSource = RData1;
Repeater1.DataBind();
<asp:Repeater ID="Repeater1" runat="server"> <ItemTemplate>
<div class="row"> <b>
<%#DataBinder.Eval(Container.DataItem,
"replay_subject")%></b><br />
<%#DataBinder.Eval(Container.DataItem,
"replay_text")%><hr/> </div>
</ItemTemplate>
</asp:Repeater>
但我不断收到此错误
无法从其字符串表示形式“<%=Data2 %>”创建类型为“System.Data.SqlClient.SqlDataReader”的对象对于“RData1”属性。
i try to use userControl to display SqlDataReader data.
in the main page
public SqlDataReader Data2;
...
<uc1:WebUserControl ID="WebUserControl1" RData1="<%=Data2 %>" runat="server" />
and in the userControl
Repeater1.DataSource = RData1;
Repeater1.DataBind();
<asp:Repeater ID="Repeater1" runat="server"> <ItemTemplate>
<div class="row"> <b>
<%#DataBinder.Eval(Container.DataItem,
"replay_subject")%></b><br />
<%#DataBinder.Eval(Container.DataItem,
"replay_text")%><hr/> </div>
</ItemTemplate>
</asp:Repeater>
But i keep getting this error
Cannot create an object of type 'System.Data.SqlClient.SqlDataReader' from its string representation '<%=Data2 %>' for the 'RData1' property.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您无法在 ASPX 上使用该内联代码分配 RData1。编译器尝试将 Data2 转换为字符串表示形式以设置属性,而 RData1 需要 SqlDataReader,因此失败。
你必须像这样在后面的代码上分配它
You can't assign RData1 using that inline code on the ASPX. The compiler try to convert Data2 to a string representation in order to set the property and RData1 is expecting a SqlDataReader so it fails.
You have to assign it on the code behind like this