ASP.NET-webbladsye - dopgehou


Hierdie hoofstuk handel oor vouers en vouerpaaie.


In hierdie hoofstuk sal jy leer:

  • Oor logiese en fisiese vouerstrukture
  • Oor virtuele en fisiese name
  • Oor web-URL's en paaie

Logiese gidsstruktuur

Hieronder is 'n tipiese vouerstruktuur vir 'n ASP.NET-webbladsy-webwerf:

Dopsies
  • Die "Rekening"-lêergids bevat aanmeld- en sekuriteitlêers
  • Die "App_Data"-lêergids bevat databasisse en datalêers
  • Die "Images"-lêergids bevat beelde
  • Die "Scripts"-lêergids bevat blaaierskrifte
  • Die "Gedeelde" vouer bevat algemene lêers (soos uitleg- en styllêers)

Fisiese gidsstruktuur

Die fisiese struktuur vir die "Images"-lêergids op die webwerf hierbo kan op 'n rekenaar soos volg lyk:

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


Virtuele en fisiese name

Uit die voorbeeld hierbo:

Die virtuele naam van 'n webprent kan "Images/pic31.jpg" wees.

Maar die fisiese naam is "C:\Johnny\Documents\MyWebSites\Demo\Images\pic31.jpg"



URL's en paaie

URL's word gebruik om toegang tot lêers vanaf die web te verkry: https://www.w3schools.com/html/html5_intro.asp

Die URL stem ooreen met 'n fisiese lêer op 'n bediener: C:\MyWebSites\w3schools\html\html5_intro.asp

'n Virtuele pad is kortskrif om fisiese paaie voor te stel. As jy virtuele paaie gebruik, kan jy jou bladsye na 'n ander domein (of bediener) skuif sonder om die paaie op te dateer.

URL https://www.w3schools.com/html/html5_intro.asp
Bediener naam w3skole
Virtuele pad /html/html5_intro.asp
Fisiese pad C:\MyWebSites\w3schools\html\html5_intro.asp

Die wortel op 'n skyfskyf word soos C:\ geskryf, maar die wortel op 'n webwerf is / (slash).

Die virtuele pad van 'n webvouer is (byna) nooit dieselfde as die fisiese vouer nie.

In jou kode sal jy beide die fisiese pad en die virtuele pad verwys, afhangend van wat jy kodeer.

ASP.NET het 3 gereedskap om met gidspaaie te werk: die ~-operateur, die Server.MapPath-metode en die Href-metode.


Die ~ Operator

Om die virtuele wortel in programmeringskode te spesifiseer, gebruik die ~ operateur.

As jy die ~-operateur gebruik, in plaas van 'n pad, kan jy jou webwerf na 'n ander vouer of ligging skuif sonder om enige kode te verander:

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

Die Server.MapPath-metode

Die Server.MapPath-metode skakel 'n virtuele pad (/default.cshtml) om na 'n fisiese pad wat die bediener kan verstaan ​​(C:\Johnny\MyWebSited\Demo\default.cshtml).

U sal hierdie metode gebruik wanneer u datalêers op die bediener moet oopmaak (datalêers kan slegs met 'n volledige fisiese pad verkry word):

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

Jy sal meer leer oor die lees van (en skryf na) datalêers op die bediener in die volgende hoofstuk van hierdie tutoriaal.


Die Href-metode

Die Href-metode skakel 'n pad wat in die kode gebruik word om na 'n pad wat die blaaier kan verstaan ​​(die blaaier kan nie die ~-operateur verstaan ​​nie).

U gebruik die Href-metode om paaie na hulpbronne soos beeldlêers en CSS-lêers te skep.

You will often use this method in HTML <a>, <img>, and <link> elements:

@{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" />

The Href method is a method of the WebPage Object.