我有一个数据库表TravelRequest
,其中包含字段SignOffName
和SignOffDate
. 我有一个TravelRequestTable
基于此表的表适配器。我有一个 DetailsView 控件,它通过 ObjectDataSource 使用它。应该都是相当标准的东西。
我想要做的是添加一个名为SignOffNameDate
表适配器的属性,该属性组合了两个字段并能够在 DetailsView 控件中绑定到它。我想以编程方式而不是在 SQL 中添加另一列,因为处理空值很棘手,并且取决于其他一些业务规则。
这是我尝试过的:
public partial class TravelRequestDS
{
public partial class TravelRequestRow
{
public string SignOffNameDate
{
get { return CombineNameDate(SignOffName, SignOffDate); }
}
}
}
当我以编程方式访问它时,此属性工作正常,但是当我尝试在我的 aspx 页面中绑定到它时:
<asp:DetailsView ID="DetailsView_TravelRequest" runat="server" AutoGenerateRows="False"
DataKeyNames="TravelRequestID" DataSourceID="ObjectDataSource_TravelRequest">
<Fields>
<asp:BoundField DataField="SignOffNameDate"
HeaderText="Sign Off" />
...
我收到 System.Web.HttpException 异常,“在所选数据源上找不到名称为 'SignOffNameDate' 的字段或属性。”
任何想法我怎么能做到这一点?我需要添加到属性中的属性吗?