После переосмысления этого я пришел к выводу, что лучшим и самым простым способом, вероятно, будет представление базы данных. Это означает, что я мог бы создать дополнительную сущность, которая сопоставляется с представлением и к которой затем можно получить доступ через службу данных. Однако это вызывает у меня проблему, поскольку у представления нет первичного ключа ...
Есть еще идеи?
ОБНОВЛЕНИЕ: Я решил проблему с первичным ключом, генерируя идентификатор для каждой строки в представлении (Firebird):
coalesce(cast(rdb$get_context('USER_TRANSACTION', 'row#') as integer), 0) + 1 as ID
Однако, похоже, не существует "чистого" решения этой проблемы со службами данных wcf?