سؤال

لدي (بعد جهد كبير) حصلت على DBLINQ تعمل مع أحدث بناء أحادي على نظام التشغيل X.

هل تم إنشاء أي شخص ناجح كيانات قاعدة بيانات عبر DBLINQ / SQLITE؟

على سبيل المثال، لدي الجدول التالي:

CREATE TABLE UserType (
    id integer primary key,
    description text )

لقد قمت بإنشاء ملف My * .cs الخاص بي و AM باستخدام التعليمات البرمجية التالية لمحاولة إنشاء إدخال جديد USERTYPE:

UserType newUserType = new UserType();
newUserType.id = null // Attempting to get SQLite to increment
newUserType.description = "Administrator";

db.UserType.InsertOnSubmit(newUserType);

db.SubmitChanges();

الدعوة إلى submitchanges هي رمي استثناء حول بناء جملة غير صالح ذات الصلة خصيصا ل @ (أنا أظن في استعلام معلمات للقيام بالإدراج). يبدو أن الرمز الذي تم إنشاؤه هو محددة SQL Server. هل هناك إصلاح أو علم أنا في عداد المفقودين، أو هل إدخال سجلات من خلال DBLINQ إلى SQLite غير مدعوم؟

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

المحلول

اتضح أنه عند استخدام DBLINQ، تحتاج إلى تعديل سلسلة اتصال DB بحيث يعرف System.Data.linq من Mono.Linq من موفر DB عند إنشاء رمز SQL الخاص به.

عمر او قديم:

SqliteConnection("Data Source=MyDatabase.sqlite");

جديد:

SqliteConnection("DbLinqProvider=Sqlite;Data Source=MyDatabase.sqlite");

إنها بهذه السهولة.

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