当您将表映射到对象时,创建的每个属性都对应一个 db 列。我想在列映射到属性之前对列执行 db 函数,因此属性获取 db 函数返回的值,而不是列
我试图通过 ColumnAttribute 的 Expression 属性来实现这一点(如下例所示),所以不是BirthDate
返回usrFn_UTCToLocalTime(BirthDate)
但它似乎没有工作并且仍然获得列的纯值。
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage = "_BirthDate", DbType = "DateTime", UpdateCheck = UpdateCheck.Never, Expression = "dbo.usrFn_UTCToLocalTime(BirthDate)")]
public System.Nullable<System.DateTime> BirthDate
{
get
{
return this._BirthDate;
}
}
我还修改了 DBML XML,如下所示: stackoverflow 上的其他帖子, 但也没有结果。
这是否可能通过使用 LINQ 或者我必须覆盖一个花费往返服务器的吸气剂?