请帮我解决这个错误
本文关键字:错误 解决 | 更新日期: 2023-09-27 18:12:54
protected void Page_Load(object sender, EventArgs e)
{
DataSet ds = new DataSet();
ds.ReadXml(Server.MapPath(@"C:'Users'Raymond'Documents'Visual Studio 2010'WebSites'WebSite17'XMLFile.xml"));
Repeater1.DataSource= ds;
Repeater1.DataBind();
}
我得到错误信息:
C:/Users/Raymond/Documents/Visual Studio 2010/WebSites/WebSite17/XMLFile.xml' 是一个物理路径,但是期望是一个虚拟路径。
删除MapPath
:
ds.ReadXml(@"C:'Users'Raymond'Documents'Visual Studio 2010'WebSites'WebSite17'XMLFile.xml");
物理路径是磁盘上的实际路径,而虚拟路径是web应用程序中的路径。MapPath
将虚拟路径映射到物理路径。因为您已经有了物理路径,所以这里不需要它。
如果路径像~/XMLFile.xml
:
ds.ReadXml(Server.MapPath(@"~/XMLFile.xml");
~
是您的web应用程序的虚拟路径的家
异常告诉你:你正在传递一个物理路径c:''
,
服务器。MapPath期望一个虚拟路径~/