2010-08-16 3 views
-3

메신저 프로그램 작성을 가정하고 프로그램에 자체 엔티티가 있습니다. 그리고 OOP .Net 언어 (C#,하지만 F # 또는 Iron Python이 될 수 있음)를 사용하기 때문에 상속과 같은 이상한 OOP 특성, 다른 객체에 대한 참조 및 계층 적 관계가 있습니다..Net 바인딩이있는 마법 객체 데이터베이스가 필요합니다.

당연히이 모든 것들을 내 하나님의 데이터베이스에 저장하고 싶습니다. 분명히 관계형이므로 설정 이론에 대해 너무 많은 시간을 들인 하나님의 저주 수학자가되었습니다.

이제 ORM 레이어를 사용할 수 있지만 악몽 일뿐입니다. 모든 종류의 XML을 작성해야하기 때문입니다.

아니요. 원하는 것은 객체 지향 기능을 갖춘 데이터베이스입니다! 심지어 객체 - 관계형 데이터베이스!

하지만! 나는 또한 자연 API와 바인딩을 내 .Net world에 갖고 싶습니다.

저는 Cat 클래스를 작성하고 Cat을 저장하기 위해 데이터베이스를 알려줄 수 있기를 원합니다. Linq 제공자가 있다면 매우 유용 할 것입니다.

아이디어가 있으십니까?

+5

당신은 공격에 굴욕당하는 것 같습니다. 귀하의 게시물에 비속어가 필요하지 않습니다. – Oded

+0

그것은 다소 농담이었습니다. 타 기아 거버. –

+3

".NET 용 개체 관계형 데이터베이스를 사용할 수 있습니까?"라는 질문을 통해 더 많은 응답을 얻을 수있을 것이라고 생각합니다. – Will

답변

3

http://ravendb.net/ 그럼 다른 맛으로 꽤 객체 데이터베이스를 거기있다. 일부는 db4o, perst.netVersant Object Database, Objectiviy Database etc과 같은 더 큰 데이터베이스와 같은 내장 된 사용 사례에 최적화 된 사용하기 쉽습니다. Google이 더 많은 데이터베이스를 제공합니다.

어쨌든 이러한 개체 데이터베이스를 사용하면 개체를 저장하고 의미를 보존 할 수 있습니다. 그래서 그들은 배열, 참조, 상속 등을 저장할 수 있습니다. 이것은 데이터를 다루는 아주 원시적 인 방법을 허용합니다. 또한 대부분 LINQ 공급자를 제공합니다.

RavenDB 또는 MongoDB과 같은 문서 데이터베이스를 살펴 보는 것도 좋습니다. (더 많은 대안을위한 google). 그것들은 또한 매우 자연스러운 인터페이스를 가지고 있으며 매우 복잡한 객체 그래프를 저장할 수 있습니다. 그러나 그들은 '문서'지향적입니다. 즉, 문서를 저장하고 업데이트한다는 의미입니다. 실제로 많은 수의 개체를 저장하고 개체를 만들고 업데이트를 함께 업데이트하는 것을 의미합니다.

2

Raven DB 나는 당신이 찾고있는 것이라고 생각합니다. 다른 문서 nosql 데이터베이스가 있습니다. CouchDB, MongoDB 또한 네이티브 .NET 구현이 아닙니다.

B.T.WML 레이어는 더 이상 악몽이 아닙니다. 그것으로부터 멀리, L2S, EF 및 Fluent NHibernate를 조사해 보셨습니까? 이들 중 어느 것도 XML 구성이 필요하지 않습니다. 각각은 플러스와 마이너스 점을 가지고 있지만 모두 완벽하게 사용할 수 있습니다.

+0

나는 무엇을 찾고 메신저 PostgreSQL 또는 아주 좋은 공급자에 대한. 닷넷 생각합니다. 또한 DB 자체가 객체를 저장할 수있는 한 SQL에 문제가 없습니다. –

0

이러한 시나리오를 들어 당신은 까마귀 같은 문서 데이터베이스를 고려할 수 :

+0

문서 저장을 의도하지 않습니다 ... 매우 일관된 객체를 저장하려고합니다. –

+0

매우 일관성이 있습니까? Raven에서 나오는 것은 .NET 객체입니다. – madcapnmckay