ASP.NET Web Pages - مجلد

هذا الفصل يقدم مجلدات ومسارات مجلدات.

في هذا الفصل، ستتعلم:

  • الهيكل المنطقي و الهيكل المادي للمجلدات
  • الاسم الافتراضي والاسم المادي
  • URL و المسار للموقع الويب

هيكل المجلدات المنطقية

هذا هو هيكل مجلدات صفحة ASP.NET التقليدية:

مجلد صفحات الويب
  • مجلد "Account" يحتوي على ملفات الولوج والأمان.
  • يحتوي مجلد "App_Data" على قواعد البيانات وملفات البيانات.
  • مجلد "Images" يحتوي على الصور.
  • مجلد "Scripts" يحتوي على سكربتات المتصفح.
  • مجلد "Shared" يحتوي على ملفات عامة (مثل ملفات التصميم والنماذج).

هيكل الملف المادي

هيكل المجلد المادي لهذا الموقع على الحاسوب يشبه هذا:

C:\Johnny\Documents\MyWebSites\Demo\Images

الاسم الافتراضي والاسم المادي

بناءً على المثال السابق:

اسم الصورة الافتراضية في الويب يشبه هذا: "Images/pic31.jpg".

لكن الاسم المادي يشبه هذا "C:\Johnny\Documents\MyWebSites\Demo\Images\pic31.jpg".

URL و المسار

يستخدم URL للوصول إلى ملفات الويب:

http://www.codew3c.com/html5/html5_intro.asp

الملف الذي يتطابق مع URL على الخادم هو:

C:\MyWebSites\htm5\html5_intro.asp

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

URL http://www.codew3c.com/html/html5_intro.asp
اسم الخادم codew3c
المسار الافتراضي /html/html5_intro.asp
المسار المادي C:\MyWebSites\codew3c\/html/html5_intro.asp

مجلد الجذر في محرك الأقراص يكتب كالتالي: C:\، ولكن مجلد الجذر في الموقع هو / (الشق المائل).

المسار الافتراضي لمجلد web (في معظم الأحيان) لن يكون نفسه المسار المادي.

في كودك، بناءً على محتوى الكود المختلف، قد تشير في نفس الوقت إلى المسار المادي والمسار الافتراضي.

يقدم ASP.NET ثلاثة أدوات لتعامل المسارات المجلدية: عمود ~، وطرق Server.MapPath وHref.

عمود ~

لتحديد مجلد الجذر الافتراضي في الكود البرمجي، استخدم عمود ~.

إذا كنت تستخدم عمود ~، بدلاً من المسار، يمكنك نقل الموقع إلى مجلد أو مكان آخر دون تغيير أي برمجة:

var myImagesFolder = "~/images";
var myStyleSheet = "~/styles/StyleSheet.css";

طريقة Server.MapPath

تقوم طريقة Server.MapPath بتحويل المسار الافتراضي (/default.cshtml) إلى المسار الفيزيائي الذي يمكن فهمه من قبل الخادم (C:\Johnny\MyWebSited\Demo\default.cshtml).

ستستخدم هذه الطريقة عندما تحتاج إلى فتح ملف بيانات موجود على الخادم (يمكن الوصول إلى ملفات البيانات فقط من خلال المسار الفيزيائي الكامل):

var pathName = "~/dataFile.txt";
var fileName = Server.MapPath(pathName);

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

طريقة Href

تقوم طريقة Href بتحويل مسار البرنامج إلى مسار يمكن فهمه من قبل المتصفح (لا يمكن للمتصفح فهم عمودي ~).

ستستخدم طريقة Href لإنشاء مسار إلى الموارد (مثل الصور وملفات CSS).

ستستخدم هذه الطريقة غالبًا في عناصر HTML <a>، <img> و <link>:

@{var myStyleSheet = "~/Shared/Site.css";}
<!-- إنشاء رابط إلى ملف CSS -->
<link rel="stylesheet" type="text/css" href="@Href(myStyleSheet)" />
<!-- نفس الأمر : -->
<link rel="stylesheet" type="text/css" href="/Shared/Site.css" />

طريقة Href تعتبر جزءًا من طرق كائن WebPage.