<asp:GridView ID="gvMessage" runat="server" DataSourceID="odsMessageInformation"
AllowPaging="True"
AutoGenerateColumns="False" ForeColor="#333333" GridLines="None"
DataKeyNames="Id" EnableModelValidation="True" Width="486px">
<asp:HyperLinkField DataNavigateUrlFields="id" DataNavigateUrlFormatString="LookingLeavingWords.aspx?Id={0}"
HeaderText="详细" Text="详细">
<ItemStyle Wrap="False" />
</asp:HyperLinkField>
</asp:GridView>
下面是传递Id的一个应用层的代码,我将它进行调试的时候,Id为0,我真的不知道为什么,我在GridView中明明已经将Id传过去了啊
public static MessageInformation GetParticularInfomationById(int Id)
{
return ManageInformationService.GetParticularInformationsById(Id);
}
在GridView ,我将数据库中的book表现在出来,GridView存在HyperLinkField 详情,每一个Id对应一个详情,为什么点击“详情”跳转到LookingLeavingWords.aspx窗体,Id传过去是0呢,求解,急急急
调试跟踪,可能你没传到。
对的,就是没传到,我真的不知道为什么没传到,
要看看数据查询的是不是正确的。
我用Select语句在SQL中查询了,select * from book where Id=3,我在SQL查询中能查到相应的详细信息,可是为什么我点击前一个窗体的“详情”,转到LookingLeavingWords.aspx窗体 ,显示的是空的,唉
你的跳转的超链接是不是写了Eval(Id),gridview中的传递需要eval,而不是链接字符串的后边直接加?ID=3 而是?eval(id=3),你试试。
DataNavigateUrlFormatString='LookingLeavingWords.aspx?Id=<%#Eval("你的ID字段名称") %>'
注 是数据库中的那个字段
同意这个:
DataNavigateUrlFormatString='LookingLeavingWords.aspx?Id=<%#Eval("你的ID字段名称") %>'
注 是数据库中的那个字段
绑定的格式有问题!