Dalam 2 tahun terakhir sejak saya mulai menulis aplikasi bisnis (sebelum saya melakukan pemrograman front level tinggi atau sistem level sangat rendah), set data dipelajari, linq to sql, dan sekarang framework entitas. Hal yang logis untuk dilihat selanjutnya adalah NHibernate.
Alasan saya akhirnya berakhir di EF adalah: (1) ia memiliki dukungan desainer terbaik dan (2) itu yang paling didukung oleh Microsoft.
Alasan (ini memiliki elemen asumsi) Saya tertarik pada NHibernate adalah: (1) itu mungkin tidak dapat digantikan oleh hal yang sama sekali berbeda secepat MS churns teknologi akses data (2) Sepertinya itu berjalan di depan atau kedua alat berlari depan untuk apa yang dilakukannya dan (3) Tampaknya stabil dan dapat dilacak kembali melalui waktu sedikit.
Adakah yang mempublikasikan skenario keduanya? Apakah yang satu lebih baik dari yang lain untuk jenis arsitektur tertentu? Atau hanya masalah gaya dan preferensi?
sumber
Kami sedang melakukan proyek di mana arsitek memilih NHibernate daripada EF. Saya berharap pilihannya berubah karena persyaratan penerbit-pelanggan sudah ada sejak awal.
Jika Anda berencana menggunakan kerangka sinkronisasi , lanjutkan dengan EF, karena NHibernate tidak dapat mengatasi pembaruan (ke kolom yang menentukan dari mana data berasal, siapa yang mengubahnya dan merupakan salinan saya yang terbaru) yang berada di belakang layar.
Jika Anda perlu mereplikasi data dari satu basis data ke basis data lainnya (dan menjaga kunci primer tetap sama),
session.Replicate
fungsinya kurang didokumentasikan dan tampaknya membutuhkan waktu lebih lama daripada salinan langsung.sumber