■الفصل العاشر ضوابط البيانات الغنية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
عرض الشبكة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
تعريف الأعمدة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
تنسيق عرض الشبكة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
حقول التنسيق . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
الأنماط. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
التنسيق-قيم محددة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
تحديد صف GridView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
استخدام التحديد لإنشاء نموذج رئيسي-تفاصيل. . . . . . . . . . . . . . . . . . . . 398
الحدث SelectedIndexChanged . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
استخدام حقل البيانات كزر تحديد. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
فرز GridView. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
الفرز باستخدام SqlDataSource . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
الفرز باستخدام ObjectDataSource. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
الفرز والاختيار. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
الفرز المتقدم. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
الرابع عشر ■ المحتويات
ترحيل GridView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
الترحيل التلقائي . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
ترقيم الصفحات المخصص مع ObjectDataSource. . . . . . . . . . . . . . . . . . . . . . 408
تخصيص شريط النداء. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
قوالب عرض الشبكة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
استخدام قوالب متعددة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
تحرير القوالب في Visual Studio. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
ملزمة للطريقة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
التعامل مع الأحداث في قالب. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
التحرير باستخدام القالب. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
عرض القائمة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
التجميع . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426
الترحيل . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428
عرض التفاصيل وعرض النموذج. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
عرض التفاصيل. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
عرض النموذج. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432
شبكات متقدمة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
ملخصات في GridView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
عرض الوالدين/الطفل في جدول واحد. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
تحرير حقل باستخدام جدول البحث. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
خدمة الصور من قاعدة البيانات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
اكتشاف تعارضات التزامن. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
■ الفصل 11 التخزين المؤقت والصفحات غير المتزامنة. . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
فهم التخزين المؤقت لـ ASP.NET. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
التخزين المؤقت للإخراج. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
التخزين المؤقت للإخراج التعريفي. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
التخزين المؤقت وسلسلة الاستعلام. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
التخزين المؤقت مع معلمات سلسلة استعلام محددة. . . . . . . . . . . . . . . . . . . . . 454
التحكم في التخزين المؤقت المخصص. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
التخزين المؤقت باستخدام فئة HttpCachePolicy . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
استبدال ما بعد ذاكرة التخزين المؤقت والتخزين المؤقت للأجزاء. . . . . . . . . . . . . . . . . . . . 457
ملفات تعريف ذاكرة التخزين المؤقت. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
تكوين ذاكرة التخزين المؤقت. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
التخزين المؤقت للبيانات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461
إضافة عناصر إلى ذاكرة التخزين المؤقت. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
اختبار ذاكرة التخزين المؤقت بسيط. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
أولويات ذاكرة التخزين المؤقت. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
التخزين المؤقت مع عناصر التحكم في مصدر البيانات. . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
تبعيات ذاكرة التخزين المؤقت. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
تبعيات عنصر الملف وذاكرة التخزين المؤقت. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
التبعيات الإجمالية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
■ المحتويات الخامس عشر
رد الاتصال الذي تمت إزالته . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
فهم إعلامات ذاكرة التخزين المؤقت لـ SQL. . . . . . . . . . . . . . . . . . . . . . . . . . . 473
إعلامات ذاكرة التخزين المؤقت في SQL Server 2000 وSQL Server 7. . . . . . . . . . . . 474
إعلامات ذاكرة التخزين المؤقت في SQL Server 2005 وSQL Server 2008. . . . . . . . 479
تبعيات ذاكرة التخزين المؤقت المخصصة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
تبعية ذاكرة التخزين المؤقت المخصصة الأساسية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482
تبعية ذاكرة التخزين المؤقت المخصصة باستخدام قوائم انتظار الرسائل. . . . . . . . . . . . . . . 483
الصفحات غير المتزامنة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
إنشاء صفحة غير متزامنة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486
الاستعلام عن البيانات في صفحة غير متزامنة . . . . . . . . . . . . . . . . . . . . . . . . . . 488
معالجة الأخطاء. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490
استخدام التخزين المؤقت مع المهام غير المتزامنة . . . . . . . . . . . . . . . . . . . . . . . . . 492
مهام ومهلات متعددة غير متزامنة. . . . . . . . . . . . . . . . . . . . . . . . 495
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496
■الفصل 12 الملفات والتدفقات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497
العمل مع نظام الملفات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497
الدليل وفئات الملفات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498
فئات DirectoryInfo وFileInfo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500
فئة DriveInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503
العمل مع السمات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 504
تصفية الملفات باستخدام أحرف البدل. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506
استرداد معلومات إصدار الملف. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506
فئة المسار. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507
متصفح الملفات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510
قراءة وكتابة الملفات مع تيارات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514
ملفات نصية . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516
الملفات الثنائية . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517
تحميل الملفات . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518
جعل الملفات آمنة لعدة مستخدمين. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520
ضغط . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525
التسلسل. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 526
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 529
■الفصل 13 لينك. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531
أساسيات لينك. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531
التنفيذ المؤجل. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533
كيف يعمل لينك. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534
تعبيرات لينك. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534
تعبيرات LINQ "تحت الغطاء". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541
LINQ إلى DataSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544
مجموعات البيانات المكتوبة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 546
القيم الخالية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547
السادس عشر ■ المحتويات
لينك إلى SQL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547
فئات كيان البيانات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 548
سياق البيانات . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 550
LINQ إلى استعلامات SQL "تحت الغطاء" . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551
LINQ إلى SQL ومكونات قاعدة البيانات. . . . . . . . . . . . . . . . . . . . . . . . . . . 554
تحديد سجل أو قيمة واحدة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 556
توليد فئات البيانات تلقائيا. . . . . . . . . . . . . . . . . . . . . . . . . . . . 557
العلاقات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563
توليد طرق للإجراءات المخزنة. . . . . . . . . . . . . . . . . . . . . . . . . 571
ارتكاب التغييرات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573
مصدر بيانات Linq. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 578
عرض البيانات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579
الحصول على البيانات ذات الصلة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 582
تحرير البيانات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 583
تصديق. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 583
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 586
■الفصل 14 XML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 587
متى يكون استخدام XML منطقيًا؟ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 587
مقدمة إلى XML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588
مزايا لغة XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 589
XML جيد التصميم. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 590
مساحات أسماء XML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 590
مخططات XML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 592
معالجة XML المستندة إلى الدفق. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 594
كتابة ملفات XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 594
قراءة ملفات XML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 597
معالجة XML في الذاكرة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 600
مستند Xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 601
XPathNavigator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 605
الوثيقة X. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 607
البحث في محتوى XML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 612
البحث باستخدام XmlDocument. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 612
البحث في XmlDocument باستخدام XPath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 615
البحث في XDocument باستخدام LINQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 617
التحقق من صحة محتوى XML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 619
مخطط أساسي. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 619
التحقق من صحة باستخدام XmlDocument . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 619
التحقق من صحة مع XDocument. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 621
تحويل محتوى XML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 622
ورقة الأنماط الأساسية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 622
باستخدام XslCompiledTransform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 623
■ المحتويات السابع عشر
باستخدام عنصر تحكم XML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 625
تحويل XML باستخدام LINQ إلى XML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 625
ربط بيانات XML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 627
الربط غير الهرمي. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 627
باستخدام XPath. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 629
شبكات متداخلة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632
الربط الهرمي مع TreeView . . . . . . . . . . . . . . . . . . . . . . . . . . . . 633
باستخدام XSLT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635
الربط بمحتوى XML من مصادر أخرى. . . . . . . . . . . . . . . . . . . . . . . . 637
تحديث XML من خلال XmlDataSource . . . . . . . . . . . . . . . . . . . . . . . . 637
XML ومجموعة بيانات ADO.NET. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 638
تحويل DataSet إلى XML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 639
الوصول إلى DataSet كـ XML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642
الجزء الثالث ■ ■ ■ إنشاء مواقع ويب ASP.NET
■الفصل 15 عناصر تحكم المستخدم. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645
أساسيات التحكم في المستخدم. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645
إنشاء تحكم مستخدم بسيط. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646
تحويل الصفحة إلى عنصر تحكم المستخدم. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647
إضافة رمز إلى عنصر تحكم المستخدم. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 648
التعامل مع الأحداث. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 648
إضافة خصائص. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 649
استخدام الكائنات المخصصة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 651
إضافة الأحداث . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654
فضح التحكم في الويب الداخلي. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 657
تحميل عناصر تحكم المستخدم ديناميكيًا. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 657
أطر البوابة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 658
التخزين المؤقت الجزئي للصفحة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661
فاري باي كنترول . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 662
مشاركة عناصر التحكم المخزنة مؤقتًا. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 663
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 663
■الفصل 16 المواضيع والصفحات الرئيسية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665
أوراق الأنماط المتتالية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665
إنشاء ورقة الأنماط. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665
تطبيق قواعد ورقة الأنماط. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 668
الثامن عشر ■ المحتويات
المواضيع . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 670
مجلدات الموضوع والجلود. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 671
تطبيق موضوع بسيط. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 672
التعامل مع تعارضات المواضيع. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 673
إنشاء جلود متعددة لنفس التحكم. . . . . . . . . . . . . . . . . . . . . . . 674
جلود مع قوالب وصور. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675
استخدام CSS في الموضوع. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 677
تطبيق السمات من خلال ملف التكوين . . . . . . . . . . . . . . . . . . . . . 677
تطبيق المواضيع بشكل حيوي . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 678
توحيد تخطيط الموقع. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 680
أساسيات الصفحة الرئيسية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 680
صفحة رئيسية بسيطة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 681
صفحة محتوى بسيطة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 683
المحتوى الافتراضي. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684
الصفحات الرئيسية مع الجداول وتخطيط CSS. . . . . . . . . . . . . . . . . . . . . . . . . 685
الصفحات الرئيسية والمسارات النسبية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 687
تطبيق الصفحات الرئيسية من خلال ملف التكوين. . . . . . . . . . . . . . . . . 688
الصفحات الرئيسية المتقدمة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 689
التفاعل مع فئة الصفحة الرئيسية. . . . . . . . . . . . . . . . . . . . . . . . . . . . 689
إعداد الصفحة الرئيسية ديناميكيًا. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 690
تداخل الصفحات الرئيسية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 691
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 693
■ الفصل 17 التنقل في موقع الويب. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 695
صفحات ذات طرق عرض متعددة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 695
التحكم في العرض المتعدد. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 696
التحكم المعالج . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 700
خرائط الموقع . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 707
تحديد خريطة الموقع. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 708
ملزمة لخريطة الموقع. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 710
فتات الخبز . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 711
عرض جزء من خريطة الموقع . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 713
كائنات خريطة الموقع. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 716
إضافة معلومات خريطة الموقع المخصصة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 718
إنشاء SiteMapProvider مخصص. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 718
تعيين URL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725
تقليم الأمن. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 726
التحكم في عرض الشجرة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 728
عقدة الشجرة . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 729
تعبئة العقد عند الطلب. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 731
أنماط عرض الشجرة . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 733
■ المحتويات التاسع عشر
التحكم بالقائمة . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 737
أنماط القائمة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 740
قوالب القائمة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 741
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 743
■الفصل 18 نشر الموقع. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 745
خدمات معلومات الإنترنت (IIS). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 745
مواقع IIS والدلائل الافتراضية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 746
وحدة تحكم إدارة IIS وتكوين IIS. . . . . . . . . . . . . . . . . . . . . 747
تعيين مواقع الويب والأدلة الافتراضية والملفات إلى عناوين URL. . . . . . . . . . . . . 748
الغوص في بنية IIS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 750
تثبيت IIS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 765
إدارة المواقع . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 771
إدارة الدلائل الافتراضية ومواقع الويب باستخدام IIS 5.x وIIS 6.0. . . . . . . 772
إدارة تجمعات التطبيقات في IIS 6.0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 778
إدارة الدلائل الافتراضية ومواقع الويب باستخدام IIS 7.0. . . . . . . . . . . . . . . 784
إدارة تجمعات التطبيقات في IIS 7.0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 796
نشر تطبيقات ASP.NET الخاصة بك. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 798
التحقق من تثبيت ASP.NET على IIS 5.x وIIS 6.0. . . . . . . . . . . . . . 800
تنفيذ ASP.NET جنبًا إلى جنب على IIS 5.x وIIS 6.0. . . . . . . . . . . . . . . 801
تنفيذ ASP.NET جنبًا إلى جنب على IIS 7.0. . . . . . . . . . . . . . . . . . . . . . . . 803
تكوين إعدادات وقت تشغيل HTTP عند النشر على IIS 5.x. . . . . . . . 803
نماذج التجميع في ASP.NET. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 804
النشر باستخدام Visual Studio. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 808
مشاريع نشر ويب Visual Studio 2005 . . . . . . . . . . . . . . . . . . . . . . 809
VirtualPathProvider في ASP.NET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 815
مراقبة الصحة في ASP.NET. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 819
فهم الهيكل الأساسي. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 820
الأحداث ومقدمي الخدمات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 820
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 823
الجزء الرابع ■ ■ ■ الأمن
■الفصل 19 نموذج أمان ASP.NET. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 827
ماذا يعني إنشاء برامج آمنة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 827
فهم التهديدات المحتملة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 828
إرشادات الترميز الآمن. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 828
فهم حراس البوابة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 829
فهم مستويات الأمان. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 830
المصادقة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 831
إذن . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 832
×× ■ المحتويات
السرية والنزاهة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 833
سحب كل ذلك معا. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 833
أمن خدمات معلومات الإنترنت. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 835
المصادقة والتخويل على IIS 5.x وIIS 6.0. . . . . . . . . . . . . . . 835
تكوين الأمان على IIS 7.0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 838
فهم طبقة المقابس الآمنة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 843
بنية أمان ASP.NET. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 852
المصادقة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 853
إذن . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 855
السياق الأمني. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 855
واجهات برمجة تطبيقات العضوية والأدوار. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 857
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 858
■الفصل 20 نماذج التصديق. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 859
تقديم مصادقة النماذج. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 859
لماذا نستخدم مصادقة النماذج؟ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 860
لماذا لا تستخدم مصادقة النماذج؟. . . . . . . . . . . . . . . . . . . . . 862
لماذا لا تنفذ مصادقة ملفات تعريف الارتباط بنفسك؟ . . . . . . . . . . . . . . . . 863
فئات مصادقة النماذج. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 864
تنفيذ مصادقة النماذج. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 865
تكوين مصادقة النماذج. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 865
رفض الوصول إلى المستخدمين المجهولين. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 869
إنشاء صفحة تسجيل دخول مخصصة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 869
مخزن بيانات الاعتماد المخصصة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 876
ملفات تعريف الارتباط الدائمة في مصادقة النماذج. . . . . . . . . . . . . . . . . . . . . . . . 877
IIS 7.0 ومصادقة النماذج. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 878
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 884
■ الفصل 21 العضوية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885
تقديم واجهة برمجة تطبيقات عضوية ASP.NET. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885
استخدام واجهة برمجة تطبيقات العضوية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 888
تكوين مصادقة النماذج. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 889
إنشاء مخزن البيانات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 890
تكوين سلسلة الاتصال وموفر العضوية. . . . . . . . . . . . . 896
إنشاء ومصادقة المستخدمين. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 900
استخدام الضوابط الأمنية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 902
التحكم في تسجيل الدخول. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 904
التحكم في حالة تسجيل الدخول. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 914
التحكم في عرض تسجيل الدخول. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 915
التحكم في استعادة كلمة المرور. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 916
التحكم في تغيير كلمة المرور. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 921
التحكم في CreateUserWizard. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 922
■ المحتويات الحادي والعشرون
تكوين العضوية في IIS 7.0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 926
تكوين الموفرين والمستخدمين. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 926
استخدام واجهة برمجة تطبيقات العضوية مع التطبيقات الأخرى. . . . . . . . . . . . . . . . . . 928
استخدام فئة العضوية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 930
جلب المستخدمين من المتجر . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 930
تحديث المستخدمين في المتجر. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 933
إنشاء وحذف المستخدمين. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 933
التحقق من صحة المستخدمين. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 934
استخدام العضوية في نماذج Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 935
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 937
■الفصل 22 مصادقة Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 939
تقديم مصادقة Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 939
لماذا استخدام مصادقة Windows؟ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 940
لماذا لا تستخدم مصادقة Windows؟ . . . . . . . . . . . . . . . . . . 941
آليات مصادقة Windows . . . . . . . . . . . . . . . . . . . . . . . . . . 942
تنفيذ مصادقة Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 948
تكوين IIS 5.x أو IIS 6.0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 948
تكوين IIS 7.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 950
تكوين ASP.NET. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 952
رفض الوصول إلى المستخدمين المجهولين. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 955
الوصول إلى معلومات مستخدم Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 957
انتحال الشخصية . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 962
انتحال الشخصية في نظام التشغيل Windows 2000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 963
انتحال الشخصية على نظام التشغيل Windows XP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 964
انتحال الشخصية والتفويض على نظام التشغيل Windows Server 2003. . . . . . . . . . . . . 964
انتحال الشخصية على نظام التشغيل Windows Vista. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 967
انتحال الشخصية والتفويض على نظام التشغيل Windows Server 2008. . . . . . . . . . . . . 968
انتحال الشخصية المكوّنة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 968
انتحال الشخصية برمجياً . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 970
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 973
■الفصل 23 التفويض والأدوار. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 975
ترخيص URL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 975
قواعد التفويض. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 976
ترخيص الملف . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 981
الشيكات إذن في التعليمات البرمجية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 982
باستخدام طريقة IsInRole (). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 982
باستخدام فئة PrincipalPermission . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 983
استخدام واجهة برمجة تطبيقات الأدوار للتفويض المستند إلى الدور. . . . . . . . . . . . . . . . . . . . . . . . 985
استخدام التحكم في عرض الدخول مع الأدوار. . . . . . . . . . . . . . . . . . . . . . . . . . . . 991
الوصول إلى الأدوار برمجياً . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 992
استخدام واجهة API الأدوار مع مصادقة Windows. . . . . . . . . . . . . . . . . . . 994
الثاني والعشرون ■ المحتويات
حماية الموارد غير التابعة لـ ASP.NET في IIS 5 و6. . . . . . . . . . . . . . . . . . . . . . . . 997
إضافة تعيين نوع الملف. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 997
كتابة معالج HTTP مخصص. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 998
التفويض والأدوار في IIS 7.0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1000
التفويض باستخدام أدوار ASP.NET في IIS 7.0. . . . . . . . . . . . . . . . . . . . . . . 1002
إدارة أدوار ASP.NET مع IIS 7.0. . . . . . . . . . . . . . . . . . . . . . . . . . . . 1005
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1006
■ الفصل 24 الملامح. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1009
فهم الملفات الشخصية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1009
أداء الملف الشخصي . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1009
كيف تقوم الملفات الشخصية بتخزين البيانات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1010
الملفات الشخصية والمصادقة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1011
الملفات الشخصية مقابل مكونات البيانات المخصصة. . . . . . . . . . . . . . . . . . . . . . . . . . . . 1011
باستخدام SqlProfileProvider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1012
إنشاء جداول الملفات الشخصية . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1012
تكوين الموفر. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1015
تحديد خصائص الملف الشخصي. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1016
استخدام خصائص الملف الشخصي. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1017
تسلسل الملف الشخصي. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1018
مجموعات الملف الشخصي. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1020
الملفات الشخصية وأنواع البيانات المخصصة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1021
واجهة برمجة التطبيقات للملفات الشخصية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1024
ملفات تعريف مجهولة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1026
موفري الملفات الشخصية المخصصة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1029
فئات موفر ملف التعريف المخصص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1029
تصميم عامل الملف الشخصي . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1031
ترميز FactoredProfileProvider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1033
اختبار عامل الملف الشخصي . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1037
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1040
■ الفصل 25 التشفير. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1041
تشفير البيانات: مسائل السرية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1041
مساحة اسم التشفير .NET. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1042
فهم فئات التشفير .NET. . . . . . . . . . . . . . . . . . . . . . . . . . 1046
خوارزميات التشفير المتماثل. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1047
التشفير غير المتماثل. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1048
فئات التشفير المجردة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1049
واجهة ICryptoTransform. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1050
فئة CryptoStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1050
■ المحتويات الثالث والعشرون
تشفير البيانات الحساسة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1051
إدارة الأسرار. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1052
استخدام الخوارزميات المتماثلة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1053
استخدام الخوارزميات غير المتماثلة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1058
تشفير البيانات الحساسة في قاعدة البيانات. . . . . . . . . . . . . . . . . . . . . . . . . . 1061
تشفير سلسلة الاستعلام. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1065
التفاف سلسلة الاستعلام. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1066
إنشاء صفحة اختبارية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1069
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1070
■الفصل 26 موفري العضوية المخصصة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1071
بنية مقدمي الخدمات المخصصين. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1071
الخطوات الأساسية لإنشاء موفري خدمات مخصصين. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1073
التصميم العام للمزود المخصص. . . . . . . . . . . . . . . . . . . . . . . . . . . 1073
تصميم وتنفيذ المتجر المخصص . . . . . . . . . . . . . . . . . . . . 1074
تنفيذ فئات الموفر. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1082
استخدام فئات الموفر المخصص. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1102
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1106
الجزء الخامس ■ ■ ■ واجهة المستخدم المتقدمة
■الفصل 27 عناصر تحكم الخادم المخصصة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1109
أساسيات التحكم في الخادم المخصص. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1109
إنشاء عنصر تحكم مخصص عظام عارية. . . . . . . . . . . . . . . . . . . . . . . . . . . 1110
باستخدام عنصر تحكم مخصص. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1112
عناصر التحكم المخصصة في مربع الأدوات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1113
إنشاء عنصر تحكم ويب يدعم خصائص النمط. . . . . . . . . . . . . . 1114
عملية التقديم . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1118
التعامل مع المتصفحات المختلفة . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1119
برنامج HtmlTextWriter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1119
كشف المتصفح. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1120
خصائص المتصفح. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1122
تجاوز اكتشاف نوع المتصفح . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1124
التقديم التكيفي. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1125
السيطرة على الدولة والأحداث. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1127
عرض الدولة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1127
دولة التحكم . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1129
بيانات إعادة النشر وأحداث التغيير. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1131
إثارة إعادة النشر. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1133
توسيع عناصر التحكم الموجودة على الويب. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1135
الضوابط المركبة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1135
إنهاء عناصر التحكم المشتقة من الشريط الجانبي. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1138
الرابع والعشرون ■ المحتويات
ضوابط القالب. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1141
إنشاء عنصر تحكم القالب. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1141
استخدام القوالب المخصصة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1143
الأنماط. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1148
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1150
■الفصل 28 دعم وقت التصميم. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1151
اللاعبون الأساسيون. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1151
سمات وقت التصميم . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1152
نافذة الخصائص. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1153
الصفات والميراث. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1157
أيقونة صندوق الأدوات . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1158
موارد الويب. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1159
إنشاء مورد. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1159
استرداد الموارد. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1160
استبدال النص. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1161
تسلسل الكود. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1162
نوع المحولات . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1162
سمات التسلسل. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1170
اكتب المحررين. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1172
مصممي التحكم . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1174
HTML وقت التصميم . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1175
العلامات الذكية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1177
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1182
■الفصل 29 الرسومات الديناميكية وGDI+. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1183
التحكم في ImageMap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1183
إنشاء النقاط الساخنة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1184
التعامل مع نقرات نقطة الاتصال. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1185
نقطة اتصال مخصصة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1186
الرسم باستخدام GDI+ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1188
رسم بسيط . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1189
تنسيق الصورة وجودتها. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1191
فئة الرسومات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1192
باستخدام مسار الرسومات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1194
أقلام . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1195
فرش . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1198
تضمين الرسومات الديناميكية في صفحة ويب. . . . . . . . . . . . . . . . . . . . . . . . . . 1199
باستخدام تنسيق PNG. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1200
تمرير المعلومات إلى الصور الديناميكية. . . . . . . . . . . . . . . . . . . . . . . . . . 1201
عناصر التحكم المخصصة التي تستخدم GDI+ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1204
الرسم البياني باستخدام GDI+. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1208
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1213
■ المحتويات الخامس والعشرون
■الفصل 30 المداخل مع صفحات أجزاء ويب. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1215
صفحات البوابة النموذجية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1216
صفحات أجزاء ويب الأساسية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1217
إنشاء تصميم الصفحة . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1218
WebPartManager وعناصر تحكم WebPartZone. . . . . . . . . . . . . . . . . . . . . . 1219
إضافة أجزاء ويب إلى الصفحة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1221
تخصيص الصفحة . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1224
إنشاء أجزاء الويب. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1226
مهام جزء ويب بسيطة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1227
تطوير أجزاء ويب متقدمة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1235
محررو أجزاء الويب. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1244
توصيل أجزاء الويب. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1250
الأفعال المخصصة وأجزاء الويب. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1258
عناصر تحكم المستخدم وأجزاء الويب المتقدمة. . . . . . . . . . . . . . . . . . . . . . . . . . . 1259
تحميل أجزاء الويب ديناميكيًا. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1262
تخويل أجزاء الويب. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1268
المهام النهائية للتخصيص. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1268
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1269
الجزء السادس ■ ■ ■ البرمجة من جانب العميل
■الفصل 31 تقنيات جافا سكريبت وأياكس. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1273
أساسيات جافا سكريبت. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1273
نموذج كائن مستند HTML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1274
الأحداث من جانب العميل. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1275
كتل البرنامج النصي. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1277
التعامل مع عناصر HTML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1279
تصحيح أخطاء جافا سكريبت. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1280
أمثلة جافا سكريبت الأساسية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1282
إنشاء معالج صفحة جافا سكريبت. . . . . . . . . . . . . . . . . . . . . . . . . . . . 1282
استخدام جافا سكريبت لتنزيل الصور بشكل غير متزامن. . . . . . . . . . . . . . 1285
تقديم كتل البرنامج النصي. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1290
هجمات حقن البرنامج النصي. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1291
طلب التحقق من الصحة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1291
تعطيل التحقق من صحة الطلب. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1292
عناصر التحكم المخصصة مع جافا سكريبت. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1294
النوافذ المنبثقة . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1294
أزرار التمرير . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1298
إطارات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1301
التنقل في الإطار. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1302
إطارات مضمنة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1303
السادس والعشرون ■ المحتويات
فهم اياكس. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1304
كائن XMLHttpRequest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1305
مثال اياكس. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1307
استخدام اياكس مع عمليات الاسترجاعات العميل. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1311
إنشاء رد اتصال العميل. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1311
عمليات الاسترجاعات من العميل "تحت الغطاء". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1317
عمليات الاسترجاعات العميل في عناصر التحكم المخصصة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1318
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1322
■الفصل 32 ASP.NET أجاكس. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1323
تقديم ASP.NET أجاكس. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1323
ASP.NET AJAX على العميل: مكتبات البرامج النصية. . . . . . . . . . . . . . . . . . 1325
ASP.NET AJAX على الخادم: ScriptManager . . . . . . . . . . . . . . . . . . 1325
عمليات الاسترجاعات الخادم. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1326
خدمات الويب في ASP.NET أجاكس. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1327
وكيل خدمة الويب. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1334
وضع أسلوب ويب في الصفحة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1336
خدمات تطبيقات ASP.NET AJAX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1337
عناصر تحكم خادم ASP.NET AJAX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1344
العرض الجزئي باستخدام UpdatePanel. . . . . . . . . . . . . . . . . . . . . . . . . . . 1344
تحديثات موقوتة باستخدام المؤقت. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1351
تحديثات تستغرق وقتًا طويلاً مع UpdateProgress. . . . . . . . . . . . . . . . . . . . 1352
التعمق في مكتبات العملاء. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1355
فهم نموذج العميل. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1356
البرمجة الشيئية في جافا سكريبت. . . . . . . . . . . . . . . . . . . . . . . 1357
إطار صفحة الويب. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1364
موسعات التحكم . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1369
تثبيت مجموعة أدوات التحكم ASP.NET AJAX. . . . . . . . . . . . . . . . . . . . . . . 1370
موسع الإكمال التلقائي . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1371
مجموعة أدوات التحكم ASP.NET AJAX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1374
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1378
■الفصل 33 سيلفرلايت. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1379
فهم سيلفرلايت. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1379
سيلفرلايت مقابل فلاش . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1380
اعتماد سيلفرلايت. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1382
سيلفرلايت و WPF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1382
تثبيت Silverlight وملحقات Visual Studio. . . . . . . . . . . . . . . 1383
إنشاء مشروع Silverlight. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1384
صفحة إدخال HTML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1385
البرنامج النصي لتهيئة Silverlight. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1386
صفحة XAML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1388
كود XAML-خلف. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1391
■ المحتويات السابع والعشرون
خصائص وأحداث . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1392
تجميع سيلفرلايت. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1393
أساسيات سيلفرلايت. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1394
فئات .NET Framework في Silverlight. . . . . . . . . . . . . . . . . . . . . . . . . . . 1395
القماش . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1396
نص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1401
التفاعل مع HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1402
تخزين معزول . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1406
سيلفرلايت و ASP.NET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1408
العقود الآجلة لـ ASP.NET. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1408
التواصل بين Silverlight وASP.NET. . . . . . . . . . . . . . . . . . 1412
الرسم بتقنية 2D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1412
أشكال بسيطة . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1413
المسارات والهندسات. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1417
فرش . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1425
الشفافية . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1427
الرسوم المتحركة . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1429
أساسيات الرسوم المتحركة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1430
تعريف الرسوم المتحركة. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1430
مثال للرسوم المتحركة التفاعلية. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1434
يتحول . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1437
ملخص . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1440
■ الفهرس . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1441
يوسع