datalist中读取另一个表的字段

lovezhxf 2010-05-10 11:33:32
datalist绑定的是信息表,有一个字段是信息类型存储的是信息类型的ID,我想在显示的时候,根据信息类型ID到信息表中查询显示 出来信息类型的名称。应该怎么做?
...全文
56 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lovezhxf 2010-05-10
  • 打赏
  • 举报
回复
前台这样绑定:<asp:DataList ID="DataList1" runat="server" Width="98%" >
<ItemTemplate >
<tr>
<td width="3%" align="center" class="fagui"><img src="../../images/index33.jpg" width="6" height="9" /></td>
<td width="55%" align="left" class="fagui"><%# GetTxtLink("MessageDetail.aspx?ID=" +(int)Eval("mesID"),Eval("mesTitle").ToString(),20)%></td>
<td width="20%" align="left" class="fagui"><asp:Label ID="label1" runat="server" Visible="false" Text='<%#Eval("ID")%>'></asp:Label>


</td>
<td width="10%" align="left" class="date"><%# DataBinder.Eval(Container.DataItem,"sendTime","{0:D}") %></td>


</tr>
</ItemTemplate>
<FooterTemplate></FooterTemplate>
</asp:DataList>

后台: private void showMessage()
{
int ID = int.Parse(Request.Cookies["UserInfo"]["userID"].ToString());
OperateClass CData = new OperateClass();
//对PagedDataSource 对象的相关属性赋值
PagedDataSource objPds = new PagedDataSource();
objPds.DataSource = CData.ExecuteSqlRead("select * from Message where senderID=" +ID+ "order by mesID desc").DefaultView;
objPds.AllowPaging = true;
objPds.PageSize = 22;

FirstPageBt.NavigateUrl = Request.CurrentExecutionFilePath + "&Page=1";

LastPageBt.NavigateUrl = Request.CurrentExecutionFilePath + "&Page=" + objPds.PageCount.ToString();
lblTotalPage.Text = objPds.PageCount.ToString();
int CurPage;

//当前页面从Page查询参数获取
if (Request.QueryString["Page"] != null)
CurPage = Convert.ToInt32(Request.QueryString["Page"]);
else
CurPage = 1;



objPds.CurrentPageIndex = CurPage - 1;
lblCurrentPage.Text = CurPage.ToString();


if (!objPds.IsFirstPage)
lnkPrev.NavigateUrl = Request.CurrentExecutionFilePath + "&Page=" + Convert.ToString(CurPage - 1);

if (!objPds.IsLastPage)
lnkNext.NavigateUrl = Request.CurrentExecutionFilePath + "&Page=" + Convert.ToString(CurPage + 1);

this.DataList1.DataSource = objPds;

this.DataList1.DataBind();
}

在这里应该怎么修改?上边的代码只能查出类型ID,Label1的值怎么显示出来啊?
ksq2010 2010-05-10
  • 打赏
  • 举报
回复
<asp:DataList ID="datalist1" runat="server">
<ItemTemplate>
<asp:Label ID="label1" runat="server" Visible="false" Text='<%#Eval("ID")%>'></asp:Label>
</ItemTemplate>
</asp:DataList>

后台:根据你的ID去查询 然后绑定
ReyZhang 2010-05-10
  • 打赏
  • 举报
回复
在数据源那一步,直接根据"信息类型的ID"关联"信息表"查询出信息类型的名称不就可以了
zhulong1111 2010-05-10
  • 打赏
  • 举报
回复
select id,(select 字段 from 表2 where 表1.id=表2.id) as 别名 from 表1
修改一下昵称 2010-05-10
  • 打赏
  • 举报
回复
这些表关系 在 SQL中处理。

绝代坏坏 2010-05-10
  • 打赏
  • 举报
回复
datatable[i]
lovezhxf 2010-05-10
  • 打赏
  • 举报
回复
怎么回事。来人给说点明白。上边说的我不太会用。详细点。谢谢。

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧