2010-03-21 5 views
1

Я рассматриваю возможность создания проекта, который предоставил бы унифицированный API и инструменты (импорт/экспорт и т. Д.) Для баз данных объектов (например, Caché, Objectivity) для .NET..NET project: унифицированная оболочка для баз данных объектов

Это обеспечит: поколение

  • схемы из классов CLR,
  • поколения C классов # из данной OODBMS схемы,
  • API для удаления, создания и обновления объектов,
  • поставщика Linq,
  • API для вызова методов объекта базы данных из .NET с использованием объектов .NET (*),
  • Некоторые из OODBMs предоставляют som e вид поддержки SQL, поэтому API для этого,
  • провайдеры для Caché и Objectivity на первом этапе.

Существует ли какой-либо проект, который реализует любой из вышеуказанных? Можно ли это сделать с диалектами NHibernate? или OODBM настолько отличаются от RDBM, что для них стоит сделать отдельную структуру?

EDIT: (*) Я имею в виду вызов метода БД (хранимой процедуры в мире RDBM) из приложения. В мире OODBM, по крайней мере, как я понял, объекты могут иметь методы, например, для объектов C#. Моя идея состоит в том, что вы бы пометили метод с атрибутом [DbCall] или так, и оставите тело пустым, а когда вы вызовете его из .NET, инфраструктура фактически вызовет метод базы данных для данного объекта.

NHibernate был разработан для RDBM, поэтому я задаюсь вопросом, существуют ли какие-либо отличия (особенности) в использовании OODBM, которые нельзя использовать при использовании NHibernate.

ответ

0

NHibernate делает все это, за исключением:

API для вызова методов объекта на сервере БД

Что я не совсем понимаю. Если вы имеете в виду, что база данных может вызывать функциональность приложения из хранимых процедур, то это вещь уровня базы данных, а не вещь DAL/ORM.

+0

Вопрос орган обновлен с объяснениями. Благодарю. – Steve

-2

Excuse мое первоначальное недоразумение! Мир управления данными меняется. Взаимодействие с платформами обслуживания, работа на масштабируемых (облачных) платформах, объектных базах данных, объектно-реляционных привязках, базах данных NoSQL и новых подходах к контролю параллелизма все становится горячими темами как в академических кругах, так и в отрасли. Таким образом, для создания общего API-слоя будет очень полезно, но определенно нелегко создать API (составные), которые могут работать с OODBMS (STSdb, [DB4O], [Perst] ...) с различными функциями. .

+0

Ну, все OODBMS приносят с собой API. Я думаю, что речь шла об общем API-слое для разных OODBMS. Точно так же, как EF - это API для всех видов RDMBS. – Gamlor