私はwinRTとエンティティフレームワーク(SQLへ)に取り組んでおり、それらの間で通信するレイヤーはWCFサービスです。エンティティ フレームワークでは、リポジトリ パターンを使用しており、次のメソッドがあります。
public IQueryable<User> GetBySearch(Expression<Func<User, bool>> search)
{
return this.Context.Users.Where(search);
}
すべて正常に動作しますが、WCF に追加すると
[OperationContract]
IQueryable<User> GetUserBySearch(Expression<Func<User, bool>> search);
と:
public IQueryable<User> GetUserBySearch(Expression<Func<User, bool>> search)
{
IUser user = new UserRepository();
return user.GetBySearch(search);
}
ただし、Expression はシリアル化できないため、WCF ではシリアル化できません。そこで継承して【Serializable】にしようと思ったのですが、sealedクラスであることが問題。
誰かが問題を解決するのを手伝ってくれますか?