如何访问 GridView 的 HyperLinkField 中的 SQL 关系/父键/外键?
我有一个关于 GridView 的问题。在我的代码中,我有一个如下所示的 HyperLinkField:
<asp:HyperLinkField DataTextField="DocumentAlbum.Name" HeaderText="Nama Album" SortExpression="Album"
DataNavigateUrlFields="AlbumID" DataNavigateUrlFormatString="~/Extras/UploadFile.aspx?DocumentAlbumID={0}" Target="_blank" />
除了一件事之外,一切正常。从图中可以看出,Document与DocumentAlbum有关系,其中Document的AlbumID取自DocumentAlbum的ID。我的目标是在 HyperLinkFielded 中显示 DocumentAlbum 的名称。这就是为什么我使用 DataTextField="DocumentAlbum.Name"
而不是 DataTextField="AlbumID"
。显然,这是行不通的。
你们知道如何检索相册的名称而不是 ID 吗?
提前非常感谢您。这个问题已经困扰我一段时间了。
I have a question about GridView. In my code, I have a HyperLinkField like below:
<asp:HyperLinkField DataTextField="DocumentAlbum.Name" HeaderText="Nama Album" SortExpression="Album"
DataNavigateUrlFields="AlbumID" DataNavigateUrlFormatString="~/Extras/UploadFile.aspx?DocumentAlbumID={0}" Target="_blank" />
Everything works fine except for 1 thing. If you see from the picture, Document has a relation with DocumentAlbum where Document's AlbumID is taken from DocumentAlbum's ID. My goal is to show DocumentAlbum's name in the HyperLinkFieled. That is why I use DataTextField="DocumentAlbum.Name"
instead of DataTextField="AlbumID"
. Apparently, this does not work.
Do you guys know how can I retrieve the album's name instead of ID?
Thank you soooooooooo much in advance. This problem has been bugging me for a while.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果在 Document 和 DocumentAlbum 之间执行 SQL JOIN 条件,则可以在分配给 GridView 的查询中返回相册名称。然后我相信您可以将专辑名称作为一列添加到 GridView 中,但将列可见性设置为 false(我使用 GridView 已经有一段时间了,所以我不记得您是否必须包含该列来引用它,例如你正在做的)。那么您应该能够执行 DataTextField="Name"。
If you do a SQL JOIN condition between Document and DocumentAlbum, you can bring back the album name in the query that is assigned to the GridView. Then I believe you can add the album name as a column to the GridView but set the column visibility to false (it's been a while with me working with the GridView so I don't remember if you have to include the column to reference it like you're doing). Then you should be able to do DataTextField="Name".