|
Beberapa hari yang lalu, saya memindahkan proyek lama asp.net ke linux, yang didasarkan pada asp.net 4.0 + Nhibernate + FluentNhibernate, dan mengalami masalah langka dalam proses migrasi, memanjat banyak artikel, termasuk Cina, Inggris, dan akhirnya menemukan jawabannya di situs web Jepang (oleh Google Translate), yang dapat digambarkan cukup menyakitkan, dan saya telah merekamnya Pertama, lingkungan yang akan dimigrasikan adalah centos6.5 + MONO + Jexus Ini terjadi di bawah Nhibernate + mono, tetapi tidak selalu terjadi, dan beberapa proyek yang saya migrasikan menggunakan Nhibernate, jadi masalah ini tidak terjadi Awal: Kesalahan berikut ditemukan dalam migrasi Jadi, jujur pergi ke web.config untuk memodifikasi konfigurasi Setelah menemukan modifikasi, itu masih menjadi masalah, sedikit tertekan, dilacak dengan hati-hati, dan menemukan bahwa ada kesalahan ketika prompt di bawah ini adalah Nhibernate OpenSession, tampaknya masalahnya terletak di sini
Saat ini, saya mencoba banyak metode, termasuk menulis ulang beberapa metode panggilan hibernasi, merangkak banyak artikel, dan tidak pernah menemukan solusi, sampai akhirnya saya menemukan penjelasan dari sudut, dan alasan kesalahan itu dilemparkan dan dijelaskan, tetapi terjemahannya terlalu melelahkan ...
Alasan mengapa kesalahan terjadi adalah:
NHibernate.AdoNet.SqlClientSqlCommandSet
Dengan pengujian di atas, saya tidak dapat menemukan SqlCommandSet....
Tampaknya karena platform
Solusi saat ini
nhibernate:
disposisi
<property name="adonet.batch_size">0</property>
FluentNhibernate:
Artinya, tambahkan. Ukuran Batch AdoNet(0)
Sejauh ini, masalahnya telah terpecahkan, dan hal di atas adalah catatan, dan saya berharap dapat membantu orang-orang yang mengalami masalah yang sama untuk menghindari beberapa jalan memutar!
|