سؤال

في تطبيق ويب مثل ويكي أو المنتديات أو المدونات البرمجيات ، غالبا ما يكون من المفيد أن تخزين البيانات في قاعدة بيانات علائقية.منذ العديد من شركات الاستضافة توفر قاعدة بيانات واحدة مع خطط الاستضافة (مع بيانات إضافية بتكلفة إضافية) فإنه مفيد جدا للمستخدمين عندما كائنات قاعدة البيانات (الجداول أو طرق العرض القيود و الإجراءات المخزنة) مشترك البادئة.ذلك هو الحال بالنسبة تطبيقات علم من قاعدة البيانات ندرة أن يكون الثابت تلوينها بادئة الجدول.أريد أكثر من ذلك.على وجه التحديد, أود أن يكون بادئة الجدول أنه يمكن للمستخدمين تعيين—يقول في شبكة الإنترنت.ملف التكوين (مع مناسبة default, بالطبع).

منذ أكره الترميز CRUD العمليات من جهة ، أنا أفضل العمل من خلال مختصة أو/م المستخدمة (يتمتع) LINQ to SQL, دون سرعة الصوت ، ADO.Net.لدي بعض التهيج في مشروع جديد ، ومع ذلك ، عندما يتعلق الأمر بوضع جدول البادئة في الإنترنت المستخدم.ملف التكوين.هل هناك أي .صافي أو/م المنتجات التي يمكن التعامل مع هذا السيناريو أناقة ؟

أفضل كنت قادرا على المجيء حتى الآن هو باستخدام LINQ to SQL خارجي ملف التعيين التي يجب أن التحديث بطريقة أو بأخرى على أساس أنها-مع ذلك افتراضية على شبكة الإنترنت.التكوين الإعداد.

أي شخص لديه حل أفضل ؟ حاولت أن تجعل ذلك يحدث في إطار الكيان ، ولكن أن تحولت إلى فوضى بسرعة.(بسبب عدم الإلمام EF ؟ ربما.) ما رأيك دون سرعة الصوت ؟ هل لديك خيار تطبيق بادئة الجدول الى جانب ذلك في رمز الجيل الوقت ؟

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

المحلول

لقد بحثت ما يلزم للقيام بذلك في كل إطار الكيان و LINQ to SQL و توثيق الخطوات اللازمة في كل.إنه أطول بكثير من الإجابات هنا تميل إلى أن تكون لذلك سوف يكون المحتوى مع رابط إلى الإجابة بدلا من تكرار ذلك هنا.إنه نسبيا المشاركة لكل, ولكن LINQ to SQL هو أكثر مرونة الحل و أيضا أسهل implment.

نصائح أخرى

لايت سبيد يسمح لك لتحديد INamingStrategy التي تمكنك من حل أسماء الجداول بشكل حيوي في وقت التشغيل.

بدلا من استخدام طاولة البادئات بدلا من أن يكون التطبيق المستخدم ينتمي إلى schema (في MS Sql 2005 أو أعلاه).

وهذا يعني أنه بدلا من:

select * from dbo.clientAProduct
select * from dbo.clientBroduct

لديك:

select * from clientA.Product
select * from clientB.Product
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top