在理解.Net中可用于资源的各种路径中的不同之处时,我有些困惑。
我只猜物理路径是资源的OS目录路径。我很困惑,事件无法告诉我基本上需要使用什么路径。
在理解.Net中可用于资源的各种路径中的不同之处时,我有些困惑。
我只猜物理路径是资源的OS目录路径。我很困惑,事件无法告诉我基本上需要使用什么路径。
以下内容应为您提供您正在寻找的信息:
以下内容应为您提供您正在寻找的信息:
关于ASP.NET应用程序,我认为它是这样的:
物理路径: 使用驱动器/目录/文件的操作系统路径,其中实际的应用程序并不真正使用此路径,但如果确实如此,它将使用虚拟路径进行映射。物理路径是操作系统如何定位资源
即: c:\\inetpub\wwwroot\aspnetapp
实际的应用程序只关心相对于其根目录的路径。
根路径: 这将是您的aspnetapp根目录下的URI或URL ~/Home/Index
使用正确的路由配置(不要与Unix根目录命名约定混淆)。 http://www.yardpenalty.com
实际上可能是OS / NOS方面的这个例子的物理路径的位置。
虚拟路径或相对虚拟路径: 应用程序从其Web服务器标识或标识的路径。
例如,在IIS(或OWIN)中,您可能拥有文件夹中图像的资源目录 c:\\inetpub\ftp\images
但开发人员将此文件夹映射到应用程序,如此... ~\Images
。因此,请将此视为能够创建应用程序及其用户可识别的资源的相对路径,同时位于其他位置。
我认为,当有一个或多个项目开发人员希望在单个域下呈现单个应用程序时,在根应用程序下使用虚拟路径将有助于开发。
绝对路径: 资源的完整路径。
假设您有一个链接可以将您带到这样的特定路线:
<a href="http://www.yardpenalty.com/home/about"> About</a>
。如果此链接在布局或母版页中是相对路径 <a href="~/home/about">About</a>
会更清洁。有些情况下,您需要对绝对路径进行硬编码,但使用相对路径通常更明智,尤其是在开发涉及迁移时。