سؤال

أنا أعمل على حل ASP.NET مع مشروعين. واحد هو واجهة الويب والآخر يحتوي على منطق عملي. أنا أستخدم LinQ إلى SQL للوصول إلى بياناتي في المشروع الثاني.

بصرف النظر عن قاعدة البيانات الخاصة بي، لدي جدول يسمى المستخدمين الذين يحملون معلومات المستخدم.

لقد بدأت في تنفيذ عضويين. لاحظت أن الأعضاء يقترن مع الأعضاء. ما هي الطريقة الأكثر تصحيحا للحصول على BLL / DAL للحديث عن المستخدمين؟ يجب أن أقوم بتنفيذ الأعضاء بشكل حدلي وعندما يتطلب المستخدم طريقة، سيتصل به على سبيل المثال. getuserinfo () في بلدي bll / dal، للحصول على معلومات كاملة عن المستخدم؟

أو يجب أن أقوم بإجراء طرق فئة الأعضاء اتصل بطرق فئة "المستخدمين" المخصصة (مثل التفاف) في BLL / DAL (فئة المستخدمين المخصصين هذا لا يرتبطون ب LinQ)؟

أو هل يمكنني توسيع أحيانا إلى حد ما ل LINQ إلى SQL Class "CFUSERS" لتوسيع الأعضاء.

آمل أن يكون هذا الأمر يبدو معقولا تماما.

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

المحلول

عادة ما أرى هذه الكيانات المنفصلة التي يدور فيها الأعضاء حول العضوية وهي مصدر قلق عام ويدور المستخدم في نظامك حول أي مكان يستلزم مجالك، فأنا أرى وجهة نظرك في حالة وجود كلا من هذه الكيانات يمكن أن تكون في واحدة، لذلك. الملامح هي بالتأكيد أسهل طريقة للذهاب.

هناك المشي على مستندات MSDN فيhttp://msdn2.microsoft.com/en-us/lib...usdvs.80).aspx. وخطر جيد من سكوت غوثري فيhttp://weblogs.asp.net/scottgu/archi...18/427754.aspx.

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

إذا كان هذا لا يصلح، مما يجعل مزود جديد مشتق من الافتراضي (ليراث ما لديك بالفعل) هو خيار رائع. وبالطبع النهائي http://codesmart.wordpress.com/2009/03/27/Extency-the-microsoft-aspnt-membership-provider/

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