Poseben znak ~

Zanima me, kaj je poanta ~ znaka v ASP.NET-u. Nekak sem vedno mislil, da to vedno pomeni root direktorija, vendar zadeve ne deluje tako. Imam recimo en js file:
root_projekta/Razno/Scripts/Script.js

In ko dam v JS stavek : <script src="~/Razno/Scr....., mi tega file na najde, če pa dam <script src="../Razno/Scr....., potem pa mi ga.
File se nahaja znotraj ene mape, glede na root projekta.

URL je tak kot ga nastavi Visual Studio: localhost:port/ime_projekta/to_je_root_projekta.

Sedaj me zanima, kaj pomeni ~ znak.

Predvidevam, da do napake pride zaradi tega ker se projekt ne izvaja na localhostu:portu, ampak je zraven še direktorij projekta. Kako dobim iz URL-ja, kaj je root, ali na nek drug način. To bi rabil dobiti v eni svojih control. 

Avtor: fora, objavljeno na portalu SloDug.si (Arhiv)

Leave a comment

Please note that we won't show your email to others, or use it for sending unwanted emails. We will only use it to render your Gravatar image and to validate you as a real person.

bojanv
bojanv - ponedeljek, 22. januar 2007

Seveda lahko to doseže&scaron; &nbsp; Lahko naredi&scaron; svoj objekt pa deduje&scaron;, lahko nardi&scaron; svojo metodo pa uporabi&scaron; v svojem objektu, itd. Implementacij je malo morje, katera pa je najbolj primerna je pa odvisno od tebe.......

fora
fora - nedelja, 21. januar 2007

Krasno. Vse lepo in prav, vse prebral, vse razumem. Ali pač ne.To je neka metoda, ki jo lahko kliče&scaron; samo znotrej System.Web.UI.Control.Kaj pa če ta tvoja control-a vsebuje nek objekt, ta pa vsebuje&nbsp; &scaron;e en drug objekt, in tam noter bi ti rabil ResolveUrl, ker tist tm izri&scaron;e sliko. In sedaj nočem iz tega glavnega objekta klicat resolveUrl na vseh mestih, kjer bi bilo to pomembno in pisat uso to kodo. Rad bi da tisti pod_pod_objekt sam poskrbi zato.Lahko to dosežem?&nbsp;

bojanv
bojanv - sobota, 20. januar 2007

Ideja tilde (~) je v tem, da pomeni root direktorija samo za SERVER kontrole in v SERVER kodi.Recimo primer:&lt;asp:Image id=&quot;nekaj&quot; runat=&quot;server&quot; ImageUrl=&quot;~/Images/someimage.gif&quot; /&gt; bo pobral root od aplikacije, &scaron;el v Images mapo ter priredil link na image-u do slike someimage.gif. Če bi izvedel kaj takega z recimo &lt;img src=&quot;~/Images/someimage.gif&quot; /&gt; pač ne bo prikazal slike oziroma je tista default slikca al pa alternate text.Če bo&scaron; izvajal v svoji kontroli na serverju, potem izrabi ta operator za root. Lahko root dobi&scaron; s pomočjo MapPath funkcije. string rootPath =&nbsp; Server.MapPath(&quot;~&quot;) Da ne bo&scaron; imel probleme pa se poslužuj ResolveUrl funkcije.&nbsp;

spirit1
spirit1 - sobota, 20. januar 2007

vse kar si zelis vedeti in najbrz tudi kaj kar si ne http://www.informit.com/articles/article.asp?p=101145&amp;seqNum=2&amp;rl=1