XmlDocument加载错误401未经授权

时间:2011-04-04 18:59:29

标签: c# visual-studio-2008 iis-6

string configFilePath = System.Configuration.ConfigurationManager.AppSettings["PATH"].ToString();
XmlDocument doc = new XmlDocument();
XmlTextReader reader = null;
reader = new XmlTextReader(configFilePath);
doc.Load(reader);
reader.Close();

doc.Load(reader)给出以下错误:

The remote server returned an error: (401) Unauthorized.

编辑: 路径为http://localhost/something/mydoc.xml,在IIS用户可以访问的文件系统中,我也试过“每个人完全控制”,但没有任何改变。 我试图将路径放入IExplorer的URL框中,它正确地显示了xml。

3 个答案:

答案 0 :(得分:2)

我遇到了同样的问题,经过一番研究后,他提出了一个解决方案 (请参阅herehere)。

在这种情况下,设置XMLURLResolver解决了我的问题

XmlUrlResolver resolver = new XmlUrlResolver();
resolver.Credentials = System.Net.CredentialCache.DefaultCredentials;                    

XmlReader reader = XmlReader.Create(url);
reader.XmlResolver = resolver;

答案 1 :(得分:0)

如果“PATH”的值试图与任何类型的远程机器连接,则听起来它没有访问权限。因此,如果您的“PATH”值类似于“\ ComputerName \ SharedDirectory \ file.xml”,请确保用户具有“ComputerName”计算机的权限。

答案 2 :(得分:0)