تم الكتابة في جمادى الثانية 29, 1429 02:15

بسم الله الرحمن الرحيم ...

السلام عليكم ورحمة الله وبركاته ...

 تطرقنا في الدوينة الماضية إلى الدرس الأول: إنشاء قاعدة بيانات Membership و Role في ASP.NET و اليوم سوف نتطرق إن شاء الله إلى كيفية تعريف الـ Roles و Members في ASP.NET.

في البداية يفترض أنك قمت بانشاء قاعدة البيانات التي سوف نستخدمها كما فعلنا في الدرس السابق الدرس الأول: إنشاء قاعدة بيانات Membership و Role في ASP.NET.

الآن افتح الفجول ستديو 2005 أو 2008 أيهما تشاء ... أنا سوف استخدم النسخة 2005.

الآن انشئ موقع ويب جديد كما في الصورة:

 

اختر اسم الموقع و لغة البرمجة التي سوف تستخدمها، أنا سوف اختار اسم "MyMembershipSite" و سوف اختار لغة سي# في هذا الدرس كما في الصورة:

 

اضغط على الصورة لتكبيرها

 

ثم اضغط على OK ثم اختر View ثم Solution Explorer إذا لم يكن ظاهراً لديك.

بعد ذلك، بزر الفأرة الأيمن اضغط على الـ Solution ثم Add New Item كما في الصورة:

 

ثم من النافذة اختر Web Configration File ثم Add و لا تغير شيء كما في الصورة:

 

اضغط على الصورة لتكبيرها

 

الآن نحتاج أن نضيف ConnectionString إلى قاعدة البيانات التي انشئناها في الدرس الأول.

نضيف الكود التالي داخل Web.Config:

<add name="MyNewDBConnectionString" connectionString="Data Source=[Server];Initial Catalog=MyNewDB;Integrated Security=True" />

و استبدل [server] باسم الجهاز الذي يوجد فيه قاعدة البيانات. و هذا الكود يخبر ASP.NET بأن قاعدة بياناتنا موجودة في الجهاز [server] و سوف نستخدم قاعدة البيانات التي اسمها MyNewDB و سوف نستخدم توثيق وندوز.

و بعد ذلك في System.Web اكتب الكود التالي:

<membership defaultProvider="CustomizedProvider">
    <providers>
 <add name="CustomizedProvider"
       type="System.Web.Security.SqlMembershipProvider"
      connectionStringName="MyNewDBConnectionString"
      applicationName="MyMembershipSite"
      minRequiredPasswordLength="5"
      minRequiredNonalphanumericCharacters="0" />
    </providers>
</membership>


<roleManager enabled="true" defaultProvider="CustomizedRoleProvider">
        <providers>
          <add name="CustomizedRoleProvider"
               type="System.Web.Security.SqlRoleProvider"
               connectionStringName="MyNewDBConnectionString" />
        </providers>
</roleManager>

و هذا الكود يخبر ASP.NET بأننا سوف نستخدم مزود للـ Membership و الذي هو SqlMembership (اي يخزن و يقرأ من SQL) و أخبرناه عن طريق الـ ConnectionString بمكان قاعدة البيانات.  و كذلك الحال بالنسة للـ RoleManager.

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

الآن شكل Web.config كالتالي:

 و من الممكن تحميل ملف Web.Config من الرابط في الاسفل و ذلك للتأكد من الخصائص لديك ...

Web.config (2.53 kb)

 

بعد ذلك اضغط على رز ASP.NET Configration كما هو موجود في المربع الاحمر في الصورة أدناه أو اذهب إلى WebSite ثم ASP.NET Configration .

الآن سوف تفتح لك نافذة Internet Explorer مثل هذه:

 

اضغط على الصورة لتكبيرها

 

الآن اذهب إلى الTab العلوي Security كما في الصورة:

 

الآن التوثيق المستخدم في النظام (و ليس قاعدة البيانات) هو وندوز، و نريد ان نغيره إلى Form و يمكننا ذلك عن طريق تعديل Web.Config مباشرة أو الذهاب إلى Select Authentication Type كما في الصورة:

 

ثم اختر الاختيار الأول From the Internet كما في الصورة:

و عندما يتم التغيير و عندما تذهب إلى ملف Web.Config سوف تجد رسالة تشبه هذه:

 

اضغط على الصورة لتكبيرها

 

و هي تفيد بأنه تم تغيير في ملف web.config، ببساطة اضغط على Yes to All. و هذا لأن ASP.NET Web Admin Tool قام بعمل تغيير على web.config عندما غيرنا توثيق ASP.NET إلى Form بدلاً من Windows.

 

و الآن من المفترض أن يكون الشكل كالتالي:

 

اضغط على الصورة لتكبيرها

 

ثم بعد ذلك لنقوم بإنشاء عدد 2 Role و احدة للـ Admin و الأخرى Users. و ذلك عن طريق الضغط على Create or Manage Roles.

ثم ادخل اسم Role و اضغط على Add كما في الصورة:

و بنفس الطريقة اضف Role اخرى باسم UserRole.

و الآن لدينا 2 Role و 0 User.

و على سبيل التجربة اضف عدد 3 مستخدمين عن طريق الرابط Create User. و اجعل واحد باسم Admin في AdminRole و الآخر User في الـ UserRole و الثالث AnyUser و لا تجعله ضمن أي Role كما في الصورة:

اضغط على الصورة لتكبيرها

 

و بعد اضافة الثلاثة مستخدمين سيكون الشكل كالتالي:

 

و في النهاية لو ذهبت إلى قاعدة البيانات عن طريق الـ MS Sql Server Managment Studio  و ذهب إلى قاعدة البيانات MyNewDB و ذهبت إلى الجدول aspnet_Users على سبيل المثال سوف تجد المستخدمين اللذين أضفتهم و كذلك الجدول aspnet_Roles.

 

في الدرس القادم سوف ندخل بشكل أعمق في ASP.NET و استخدام الـ Login Controls و سوف نرى أيضاً كيف يمكننا تحديد صلاحيات على مستوى الصفحة و على مستوى المجلد أيضاً.

 

مع تحياتي ... طلال الحضبي.

Del.icio.usDigg It!DZone It!Reddit


تم الكتابة في جمادى الأولى 26, 1429 22:44

  

السلام عليكم ورحمة الله وبركاته ...

 وقعت بالصدفة قبل فترة على موقع VistaDB و الحقيقة فوجئت لما وجدت داخله ...

أولاً: ما هو VistaDB ؟

VistaDB هي قاعدة بيانات SQL ... مصممة خصيصاً لمطوري بيئة الدوت نت NET. تعمل على الـ Microsoft .NET Framework و على Compact Framework الخاصة بالأجهزة الكفية و على Mono على لينكس.

 

 

ثانياًُ: ماذا يميز VistaDB ؟

طبعاً من تعريف VistaDB السابق، نجد انها لم تقدم شيء جديد!! و لكن VistaDB هي قاعدة بيانات خفيفة جداً صغيرة الحجم (أقل من 1 ميقا). و هي ملف DLL واحد فقط. أي ان محرك قواعد البيانات ليس EXE و لكنه ملف DLL واحد فقط تستطيع إدراجه في مشروعك و هو كما قلت أقل من وحد ميقا.

و ما يميز VistaDB أيضاً هو ان قواعد البيانات الخاصة بها هي أيضاً ملف واحد و لا يوجد Log file و Data file و لكن يوجد ملف واحد امتداده VDB3. و تستطيع عمل نسخة إحتياطية لقاعدة بيانات بأمر XCopy أو نسخ الملف الموجود فقط و تستطيع استرجاع قاعدة البيانات بلصق الملف فقط.

VistaDB تستطيع تحمل حجم 4 تيرابايت لكل قاعدة بيانات. و 65,535 جدول لكل قاعدة بيانات و 65,535 عمود لكل جدول و 65,535 Index لكل جدول أيضاً.

تدعم VistaDB النسخة الثالثة SQL-99 و لمزيد من المعلومات عن ذلك يمكنك زيارة الموقع هنا.

كما أن VistaDB تدعم Unicode و ذلك لكتابة باللغة العربية على سبيل المثال.

تستطيع التعامل مع VistaDB عن طريق T-SQL بنفس الطريقة مع MS SQL Server 2005 و تستطيع استخدام CLR باستخدام السي# أو VB.net.

يوجد منها نسخة Exress مجانية و لمزيد من المعلومات عنها تفضل هنا.

كما أن VistaDB مطورة بالكامل باستخدام #C.

و توجد عدد من الأدوات للتطوير باستخدام VistaDB مثل Data Migration Wizard و ذلك لنقل بياناتك من MS Access أو MS SQL Server إلى VistaDB .

كما يوجد Data Builder و التي تعطيك شاشات للتعامل مع قواعد بيانات داخل VistaDB حيث تستطيع إنشاء أو تعديل او حذف جدول كما تستطيع انشاء indexes, triggers, constraints, columns. و تسطيع عمل database encryption من خلالها.

كما انه لا يوجد حد لعدد CPU أو RAM الذي يدعمها.

 

ثالثاً: كيف تعمل VistaDB ؟

كما قلت سابقاً، محرك قواعد بيانات VistaDB هو ملف DLL واحد فقط، و قاعدة البيانات هي عبارة عن ملف VDB3 واحد. و باستخدام اداة مثل ILMerge تستطيع ان تضمن ملف DLL داخل ملف EXE الخاص ببرنامج.

و الشكل أدناه يبين آلية عمل VistaDB و  البرنامج الذي تبنيه. كما يبين الشكل ان VistaDB ستكون جزءً من البرنامج أو الموقع الذي تبنيه.

 

 

 

و عند ذلك لا داعي أن نحمل محرك قواعد البيانات مثلاً MS SQL Server 2005 في جهاز العميل الذي يستخدم الموقع أو البرنامج. كما أنه عند البحث عن مستضيف موقعك الشخصي لن تقلق إذا كان يدعم MS SQL Server أم لا فكل ما تحتاجه هو NET. فقط لكي تعمل VistaDB .

 

اتمنى أن يكون طرحي مفيداً و موفقاً و سوف اختبر المنتج و أبدي لكم رأيي فيه متى ما سمحت الفرصة.

 

 ولمزيد من المعلومات يمكنكم زيارة الموقع الرسمي http://www.vistadb.net/

 

مع تحياتي ,,, طلال الحضبي.

Del.icio.usDigg It!DZone It!Reddit


تم الكتابة في جمادى الأولى 25, 1429 20:46

  

 بسم الله الرحمن الرحيم ...

أصبحت الإنترنت خلال السنوات القليلة الماضية مهمة جداً لدرجة من الصعب تصور العالم بدون الإنترنت.
 فحتى كتابة هذه السطور في عام 2008 للميلاد فعدد مستخدمي الإنترنت يبلغ حوالي 1,407,724,920 مستخدم. و بمعدل نمو يبلغ 290% في الفترة من 2000- 2008 للميلاد، و قد بلغ معدل النمو في منطقة الشرق الأوسط 1167.8% خلال نفس الفترة. كما يبلغ عدد مواقع الإنترنت حوالي 102,911,118 موقع، و يسجل يومياً حوالي نصف مليون موقع حول العالم.
كما الإنترنت في هذه الأيام دخلت مجالات كثيرة من حياتنا و من أهمها:

1. المعرفة: فلا شك أن المعرفة تعد أحد أهم و أقوى مميزات الإنترنت، فمع العدد الهائل من مستخدمي الإنترنت و العدد الكبير جداً من المواقع المتوفرة على الويب، توجد العديد من المواقع التي تهتم في مختلف المجالات. كما أصبحت الكثير من الشركات توفر محركات بحث مثل Google و Yahoo و التي تستطيع من خلالها البحث عن المواضيع التي تهمك بشكل سهل و مباشر و هي أسلوب من أساليب استخراج المعرفة في الويب.
2. التعليم: لاشك أن التعليم في هذه الأيام بدأ يأخذ منحى آخر عن التعليم التقليدي-بحضور الطالب إلى الصف و تلقينه بشكل مباشر-، فالآن بدأت الكثير من المدارس و الجامعات تتسابق في طرح خدماتها الإلكترونية و التعليمية بشكل خاص على الويب. و أصبحت تعظم استخدام الإنترنت في مجال التعليم، عن طريق استحداث مجموعات دارسيه، و معامل افتراضية. و أصبحت وسيلة التواصل الأساسية بين الطالب و المعلم هي الإنترنت سواءً عن طريق الويب أو البريد الإلكتروني.
3. التجارة: في وقت كانت قريش تقوم برحلتي الشتاء و الصيف إلى اليمن و الشام، أصبح بإمكانك اليوم و أنت في منزلك التسوق في أي مكان في العالم. فكل ما يلزمك هو وصولك إلى الإنترنت و توفر بطاقة ائتمانية للدفع، و توفر بريد لكي يتم التوصيل عن طريقة. فبإمكانك الدخول إلى موقع Amazon.com على سبيل المثال و القيام بالتسوق و مشاهدة مختلف البضائع و المقارنة فيما بينها.
4. الخدمات: في هذه الأيام أصبحت المؤسسات و الشركات و حتى الحكومات تتسابق في تطبيق مفهوم الخدمات الإلكترونية. فالوقت الذي كان يلزمنا الذهاب إلى المصرف لقيام بعملية مصرفية، أصبح بإمكاننا اليوم القيام بها عن طريق الويب و أنا في المنزل أو المكتب. لذلك أصبح بإمكانك القيام بعمليات أكثر في وقت أقل عن طريق الخدمات الإلكترونية المقدمة عن طريق الإنترنت.

كما توجد العديد من المجالات الأخرى التي دخلتها الإنترنت مثل الصحة الإلكترونية، و البحث عن الأشخاص، و كذلك الكثير جداً من الخدمات الأخرى، مثل التواصل و التراسل.

و مما يدل على أهمية الإنترنت و قيمتها التجارية، فقد قامت شركة Google التي تملك محرك البحث الشهير Google بشراء موقع http://www.youtube.com/ بمبلغ 1.65 مليار دولار في أواخر عام 2006 للميلاد. و كما قامت شركة Microsoft بالتقدم بالاستحواذ على شركة Yahoo في أوائل عام 2008 للميلاد و ذلك بمبلغ 44.6 مليار دولار و قد رفضت شركة Yahoo هذا الطلب. فكل هذه المبالغ المهولة تؤكد أهمية الإنترنت في نظر هذه الشركات العملاقة.
 و مما يدل على أهمية الإنترنت، هو حجم التجارة الإلكترونية التي تدار من خلال الإنترنت، فجم التجارة الإلكترونية التي تدار في الولايات المتحدة الأمريكية فقط، بلغ عام 2002 للميلاد  حوالي 47.8 مليار دولار أمريكي، و قد بلغ في العام 2006 للميلاد  حوالي 130 مليار دولار أمريكي.
 كما أن عدد المستخدمين لخدمات الإنترنت في الولايات المتحدة الأمريكية بلغ عام 2002 للميلاد  حوالي 157.6 مليون مستخدم. و قد ازداد هذا العدد ليبلغ 210.8 مليون مستخدم في عام 2006 للميلاد.
 و الجدير بالذكر بأن معدل الزيادة و النمو في استخدام الإنترنت و التجارة الإلكترونية التي تدار من خلالها، و الخدمات التي أصبحنا نعتمد عليها بشكل كبير في الإنترنت، أصبح يزداد بمعدلات كبيرة جداً. و هذا من شأنه تعظيم استخدام الإنترنت. فعلى سبيل المثال استغرق المذياع 38 عاماً للوصول إلى 50 مليون مستخدم، و استغرق التلفاز حوالي 13 عام، بينما الإنترنت وصلت خلال 5 أعوام.

من أهم ما يميز الإنترنت هي إمكانية الوصول لها في أي وقت و في أي مكان تقريباً. و لذلك أخذت الشركات و المؤسسات تتسابق في عرض خدماتها الإلكترونية على الإنترنت و ذلك لتخطي مشاكل الوصول الزماني و المكاني. حيث أن الخدمات تقدم على مدار 24 ساعة في اليوم من أي مكان.

Del.icio.usDigg It!DZone It!Reddit

التصنيف: WEB 2.0 , الإنترنت
البطاقات:

تم الكتابة في جمادى الأولى 7, 1429 07:57

بسم الله الرحمن الرحيم

سوف أقوم إن شاء الله بكتابة سلسلة من المقالات عن الإنترنت بشكل عام و من ثم سأقوم بكتابة مقالات عن كيف تملك و تطور موقع إنترنت خاص بك. و للدخول إلى هذا الموضوع لابد من التقديم و التعريف بالإنترنت بشكل عام.

قبل أن أتحدث عن ما هي الإنترنت، سوف أتحدث عن شبكات الحاسب الآلي. فشبكة الحاسب الآلي هي: مجموعة من أجهزة الحاسب الآلي مرتبطة بعضها ببعض للتشارك فيكما بينها.
 يوجد العديد من أنواع شبكات الحاسب الآلي منها: Local Area Network ما يعرف بالشبكة المحلية LAN ، و أيضاً Wide Area Network و هي ما يعرف بالشبكة العريضة WAN. كما يمكن وصل أجهزة الحاسب الآلي عن طريق أسلاك (Ethernet)  أو عن طريق الألياف الضوئية للسرعات العالية و من الممكن ربط أجهزة الحاسب الآلي حالياً عن طريق موجات الراديو بشكل لاسلكي.


 مصطلح "إنترنت" (Internet) و يطلق عليه أيضاً النت (NET) هو اختصار للتعبير Network Interconnected و يعني ذلك "الشبكة المترابطة".  فالإنترنت عبارة عن شبكات عديدة مرتبطة بعضها ببعض (شبكة الشبكات). و شبكة الإنترنت شبكة عامة (Public) يمكن لأي شخص الانضمام لهذه الشبكة بشكل مباشر و سهل.

و هناك خطأ شائع يقع فيه معظم الناس، و هو الخلط بين الإنترنت و الشبكة العنكبوتية (World Wide Web) أو ما يعرف بالـ WWW، حيث أن الإنترنت هو الربط الفعلي بين أجهزة الحاسب الآلي و الشبكات، بينما الشبكة العنكبوتية أو ما يعرف بالويب Web هي نظام وثائق مرتبط بعضها ببعض عن طريق الروابط (Hyperlinks)،  و يتم الوصول إلى هذه الوثائق عن طريق الإنترنت.

 

في المقال القادم سوف أتكلم إن شاء الله تعالى عن تاريخ الإنترنت.

 

تحياتي ... طلال.

Del.icio.usDigg It!DZone It!Reddit

التصنيف: WEB 2.0 , الإنترنت
البطاقات:

البحث



إخلاء مسؤولية
جميع الآراء التي تم التعبير عنها هنا هي آرائي الشخصية وهذه الاّراء لا تمثل وجهة نظر عملي على أي حال.
© جميع الحقوق محفوظة 2008 مدونة طلال
Sign in