WCF OperationContract и Nhibernate ICriteria


Мы пытаемся создать классный API, используя WCF и ICriteria, например:

[ServiceContract]
public class ProductService
{
[OperationContract]
public List<Product> Get()

[OperationContract]
public List<Product> GetByCriteria(Criteria criteria)

}

Мы думаем использовать DetachedCriteria, чтобы любой мог отправить его, и мы подключаем его к сеансу в Службе для выполнения запроса перед нашей базой данных.

Есть ли кто-нибудь, кто создает такой API? Мы должны использовать ICriteria с NHibernate на? Есть еще классные идеи?

Спасибо.

1 2

1 ответ:

Это не крутой API. Он ориентирован на объект,а не на сервис. И это не сработает.

Вам придется использовать KnownTypeAttribute (или ServiceKnownTypeAttribute) для полиморфных запросов. (см. Этот вопрос).

Кроме того, это не очень элегантное решение, и я бы отговорил вас от этого. Будьте откровенны, когда находитесь в мире обслуживания.