【发布时间】:2012-10-10 19:38:03
【问题描述】:
string path = context.Server.MapPath("~/Temp");
或
string path = context.Server.MapPath("/Temp");
一样吗?
我知道 '~' 代表 root 但想知道区别 bw ~/folder 和 /folder
【问题讨论】:
标签: asp.net file-upload
string path = context.Server.MapPath("~/Temp");
或
string path = context.Server.MapPath("/Temp");
一样吗?
我知道 '~' 代表 root 但想知道区别 bw ~/folder 和 /folder
【问题讨论】:
标签: asp.net file-upload
服务器控件中的绝对和相对路径引用具有 以下缺点:
绝对路径在应用程序之间不可移植。如果你移动 绝对路径指向的应用程序,链接将断开。
客户端元素样式中的相对路径可能很难 如果您将资源或页面移动到不同的文件夹,请进行维护。
为了克服这些缺点,ASP.NET 包含了 Web 应用程序 根运算符 (~),您可以在服务器中指定路径时使用它 控制。 ASP.NET 将 ~ 运算符解析为当前的根 应用。
见http://msdn.microsoft.com/en-us/library/ms178116(v=vs.100).aspx
~/ 解析为应用程序根目录。
/ 解析为站点根目录。
当呈现服务器资源(如控件或视图)时,~/ 路径会根据应用程序的结构和上下文解析为站点根路径(因为 ~/ 对 Web 浏览器毫无意义)。
为简化起见,应用程序根目录 (~/) 在 ASP.Net 应用程序(Web 表单和 MVC)中几乎总是正确的选择。
【讨论】: