2009-11-27 5 views
0

우리는 NHibernate와 WPF를 기반으로하는 기존의 C# 프로젝트를 가지고 있습니다. Linux로 변환하고 Python과 같은 다른 구현을 고려해야합니다. 그러나 어떤 이유로 그들은 NHibernate를 많이 좋아하고 그것을 유지하기를 원합니다.NHibernate와 python

NHibernate 항목을 유지하고 Python과 함께 사용할 수 있는지 알고 있니? 나는 NHibernate가 C#과 DB 사이에 코드를 붙이는 것 같아서 다른 언어들에도 익스포트 할 수 없다.

다른 질문 : 누군가가 좋은 python 호환 NHibernate의 교체를 추천 할 수 있습니까? 백엔드 DB는 오라클입니다.

답변

0

장고를 확인하십시오. 그들은 좋은 ORM을 가지고 있으며 DB 스키마에서 리버스 엔지니어를 시도 할 수있는 도구가 있다고 생각합니다.

2

Linux의 Mono에서 프로젝트를 실행하면 어떨까요? Mono는 NHibernate를 지원하는 것으로 보이는데, 이는 당신이 당신의 어플리케이션의 큰 덩어리를 다시 쓸어 버릴 수 있음을 의미한다.

또한 액션에서 파이썬을 실제로 사용하려면 IronPython을 Mono와 함께 사용할 수 있습니다.

5

NHibernate는 C#과 관련이 없지만 .NET에만 해당됩니다.

IronPython은 NHibernate를 사용할 수있는 .NET 언어입니다.

.NET과 NHibernate는 Mono를 통해 Linux에서 실행될 수 있습니다. Mono의 WPF 지원이 얼마나 좋은지 잘 모르겠습니다.

IronPython이 Linux에서 실행되는지는 확실하지 않지만 찾고있는 것과 가장 가까운 것으로 보입니다.

하이버 네이트 (Hibernate) 라 불리는 NHibernate의 Java 버전이 있으며, 리눅스가 많이 지원되는 Java와 Python 사이의 통합 지점이 있습니다.

파이썬 커뮤니티에는 자체 ORM이 있지만, 알고있는 한, 그 옵션은 성숙하지 않고 Hibernate/NHibernate만큼 풍부한 것은 아닙니다.

여러분이 사용할 수있는 거의 모든 옵션이 오라클을 지원할 것이라고 생각합니다.

+0

+1, 그의 질문에 대해서만 진짜 anwser. –

+0

Hibernate에서 Hibernate로 전환하면 Python으로 코딩하기 위해 자이 썬을 사용할 수 있고, 데이터베이스 액세스를 위해 Java에서 실행되는 Hibernate를 사용할 수있다. 이점은 Java가 Linux에서 매우 많이 지원된다는 것이며, Hibernate와 NHibernate는 중요한 점에서 실제로 다르지 않다는 것입니다. – extraneon

+0

이 질문에 대한 유일한 진정한 대답 일지 모르지만 IronPython/Mono/NHibernate 스택을 실행하는 사람의 수를 Honda Fit에 맞출 수 있습니다. –

1

SQLAlchemy은 지금까지 파이썬에서 가장 강력한 ORM입니다.

+0

동의 - "진짜"ORM이 필요한 경우 SA가 파이썬과 함께 갈 수있는 유일한 방법입니다. –