سبد خرید (0)

آموزش ASP.NET-فولدرها

این درس در رابطه با فولدرها و مسیرهای مربوط فولدر می باشد.


آن چه در این بیاموز خواهید آموخت:

  • ساختارهای فیزیکی  و منطقی فولدر
  • نام های فیزیکی و مجازی
  • مسیرها و URL های وب

ساختار منطقی فولدر

در شکل زیر ساختار فولدرها در ASP.NET WebPage را ملاحظه می فرمایید:

  • فولدر "Account" حاوی فایل های logon و security  است.
  • فولد "App_Data" حاوی فایل های داده و پایگاه داده است.
  • فولدر "Images" حاوی تصاویر است.
  • فولدر "Scripts" حاوی اسکریپت های مرورگر است.
  • فولدر "Shared" حاوی فایل های مشترک (از قبیل فایل های Layout و استایل) است.

ساختار فیزیکی فولدر

ساختار فیزیکی برای فولدر "Images" در وب سایت بالا ممکن است روی یک کامپیوتر مانند زیر باشد:

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


نام های فیزیکی و مجازی

برای مثال بالا:

نام مجازی یک تصویر ممکن است به صورت "Images/pic31.jpg" باشد.

اما نام فیزیکی به صورت "C:\Johnny\Documents\MyWebSites\Demo\Images\pic31.jpg" می باشد.


URLs and Paths URL ها و مسیرها

URL هایی که برای دسترسی به فایل ها استفاده می شود به صورت زیر است:

http://www.famaco.ir/Home.aspx

این URL منطبق با فایل فیزیکی زیر روی سرور است:

C:\MyWebSites\Famaco\Home.aspx

مسیر مجازی، مسیرهای کوتاهی است که برای نمایش مسیرهای فیزیکی به کار می رود. اگر از مسیرهای مجازی استفاده کنید، می توانید صفحات خود را روی دامنه متفاوتی بدون به روز کردن مسیر، انتقال دهید.

URL http://www.famaco.ir/Home.aspx
Server name Famaco
Virtual path Home.aspx/
Physical path C:\MyWebSites\Famaco\Home.aspx

ریشه روی دیسک درایو به صورت \:C نوشته می شود، اما در وبسایت ها ریشه، / (علامت خط مورب) می باشد.

مسیر مجازی یک فولدر وب تقریبا اغلب اوقات مشابه مسیر فیزیکی فولدر نمی باشد.

در کدتان، بسته به اینکه چه چیزی را دارید کد می زنید، به هر دوی مسیر فیزیکی و مسیر مجازی ارجاع خواهید داد.

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";}

<!-- This creates a link to the CSS file. -->
<link rel="stylesheet" type="text/css" href="/@Href(myStyleSheet)" />

<!-- Same as : -->
<link rel="stylesheet" type="text/css" href="/Shared/Site.css" />

متد Href یک متد از شی WebPage است.