今天下午有人在论坛咨询 LinqDataSource 控件如何进行组合字段数据显示在下列列表中其实很简单就是使用new 重新生成一个临时类即可下面是完整的代码
C# 代码
using System;
using SystemCollectionsGeneric;
using SystemWeb;
/// <summary>
///Books 的摘要说明
/// </summary>
public class Books
{
public int Id { get; set; }
public String Author { get; set; }
public String Title { get; set; }
public DateTime PunDate { get; set; }
public Books() { }
public List<Books> GetBooks
{
get
{
return thisGetInternalBooks();
}
}
internal List<Books> GetInternalBooks()
{
List<Books> bs = new List<Books>();
bsAdd(new Books { Id = Author = 孟宪会 Title = 《ASPNET 应用开发技术》 PunDate = SystemDateTimeNowAddMonths() });
bsAdd(new Books { Id = Author = 孟宪会 Title = 《Eric Meyer谈CSS(卷)》 PunDate = SystemDateTimeNow });
bsAdd(new Books { Id = Author = 孟宪会 Title = 《Eric Meyer谈CSS(卷)》 PunDate = SystemDateTimeNowAddMonths(+) });
return bs;
}
}
ASPX 代码
<%@ Page Language=C# %>
<!DOCTYPE html PUBLIC //WC//DTD XHTML Transitional//EN transitionaldtd>
<html xmlns=>
<head runat=server>
<title></title>
</head>
<body>
<form id=form runat=server>
<asp:DropDownList ID=DropDownList runat=server DataSourceID=LinqDataSource
DataTextField=DataText DataValueField=Id>
</asp:DropDownList>
<asp:LinqDataSource ID=LinqDataSource runat=server ContextTypeName=Books TableName=GetBooks
Select=new(IdIdtoString() + + Author + + Title + + PunDateToString(yyyyMMdd) as DataText)>
</asp:LinqDataSource>
</form>
</body>
</html>
最后的执行结果将是下面的样子
HTML 代码
<select name=DropDownList id=DropDownList>
<option value=>孟宪会《ASPNET 应用开发技术》</option>
<option value=>孟宪会《Eric Meyer谈CSS(卷)》</option>
<option value=>孟宪会《Eric Meyer谈CSS(卷)》</option>
</select>
在此写出此文
目的在于示例一下 LinqDataSource 控件的 Select 属性的写法