القلعة-ActiveRecord البرنامج التعليمي .NET framework 3.5 مكسورة ؟

StackOverflow https://stackoverflow.com/questions/133281

سؤال

وقد حاول أي شخص ActiveRecord مقدمة عينة مع C# 3.5?أنا ما لديهم شعور أن العينة هي خاطئة تماما أو مجرد الخروج من التاريخ.تكوين XML هو مجرد خطأ عادي:

<add key="connection.connection_string" value="xxx" />

يجب أن تكون :

<add key="hibernate.connection.connection_string" value="xxx" />

(إذا فهمت nhibernate التكوين بناء الجملة الصحيح..)

وأنا أتساءل ما أفعله خطأ.أحصل على "لا يمكن أن تؤدي ExecuteQuery المستخدم" استثناء عند استدعاء عدد() في نموذج المستخدم.

أي فكرة عما يمكن أن يكون هذا.البرنامج التعليمي المصدر يختلف بشدة من المصدر على الصفحة (أبرزها في تكوين XML) ، VS2003 عينة مختلفة من الجملة على معظم الأشياء (أي الوراثة الخ).

أي اقتراحات ؟ ActiveRecord تبدو رهيبة..

هل كانت مفيدة؟

المحلول

(هذه كانت طويلة جدا بالنسبة تعليق آخر)

[@Tigraine] من تعليقاتكم على إجابتي السابقة يبدو أن الخطأ لا يكمن في التكوين ، ولكن مع واحدة من الكيانات.إزالة "السبات" تصحيح التكوين بحيث geve لك الخطأ الحقيقي ، الذي يبدو أن الكيان "ما بعد" لا يعزى بشكل صحيح على ActiveRecord لإنشاء الخرائط.

إذا كنت كذلك في الخطأ أنه يعطي ، فإنه من المحتمل أن بعض تفاصيل ما عن "ما بعد" فشل.

بعض الأمور الشائعة تشمل:

  • فئة لا تملك [ActiveRecord] السمة.
  • لا توجد المنشأة مع [PrimaryKey] السمة.
  • لا يوجد مطابقة جدول يسمى "ما بعد" (أو "وظيفة" إذا PluralizeTableNames هو "صحيح").
  • لا يوجد مطابقة العمود(s) من أجل المنسوب خصائص.
  • الخاص بك عزا خصائص و طرق العامة لا virtual (هذا واحد يقتلني في كل وقت).

نصائح أخرى

إن 'السبات' جزء من المفتاح تم إزالتها في NHibernate الإصدار 2.0.هذا الإصدار هو الصحيح NHibernate 2.0 وما بعدها:

<add key="connection.connection_string" value="xxx" />

تحرير:أرى أن التشغيل السريع لا تأتي مع الثنائيات قلعة NHibernate.يجب تحميل الثنائيات من في مكان ما ؛ سيكون من المفيد إذا كنت يمكن أن توفر رقم الإصدار الخاص بك NHibernate.dll الملف.

مشوش ، على الأقل بعض التشغيل السريع تم تحديثها لتكون الحالي مع NHibernate (NH) 2.0 ، ولكن أحدث السليم القلعة الإصدار لا يزال 1.0 RC3 (تقريبا سنة من العمر الآن) ، والتي لا تشمل NH 2.0.

يمكنك الذهاب بطريقتين.يمكنك الاستمرار في استخدام القلعة RC3 و في هذه الحالة سوف تحتاج في الواقع إلى إضافة 'السبات' بادئة التكوين الخاص بك إدخالات.أو يمكنك تحميل بناء من القلعة من الجذع الذي يجب أن يشغل ضد NH 2.0.المشكلة مع هذا النهج الأخير هو أن بعض كسر التغييرات التي أدخلت في NH 2.0 قد لا تكون ثابتة في بداية سريعة.

حذف "hibernate."جزء لكل تكوين إدخالات.أول مثال هو الصحيح.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top