我有一个包含表格的数据库:
User { UserId, Name, Number, DateCreated, DateEffective, DateEnd, DateReplaced }
我通过WCF数据服务公开包含该表的数据库中的信息。
1)列:DateCreated,DateEffective,DateEnd,DateReplaced用于保存历史记录,因此不应出现在使用我的WCF数据服务的客户端。
2)此外,每当客户进行查询时:
var q = from u in service.Users select u;
我希望它只返回将DateEnd列设置为null的用户。
有没有办法实现这个功能?
答案 0 :(得分:4)
1如果您正在浏览WCF,那么您将序列化为XML,对吧?因此,请标记您不希望序列化为NonSerialized的属性。
[NonSerialized()] public string test; [MSDN NonSerializedAttribute Class][1]
2您必须公开客户端访问的方法,该方法已经过滤了null DateEnd列。
如
public class Service{
private List<User> _users;
public List<User> Users {
get{
from u in _users where u.DateEnd == null select u
}
}
...
}