修改XML文件时收到未经授权的异常

本文关键字:授权 异常 XML 文件 修改 | 更新日期: 2023-09-27 18:09:10

我有一个应用程序,在您未经授权的例外中更改web配置中的connectionstring。有什么方法可以让我访问这个文件吗?谢谢你的帮助。

Exception Message: System。UnauthorizedAccessExeption:拒绝访问路径" path "。//xml文件路径

var adminConnectionStringConfig = new FileInfo(e.Data.Details.VSStudio.Solution.FullName).Directory
                                  + @"'Web.Admin'ConnectionStrings.config";
//Method that updates the xml file
private void SetupConnectionStrings(string path, string newDb)
{
    var doc = new XmlDocument();
    doc.Load(path);
    XmlNode node = doc.SelectSingleNode("configuration/connectionStrings");
    for (int i = 0; i < node.ChildNodes.Count; i++)
    {
        if (node.ChildNodes[i].Attributes["name"].Value == "SYS")
        {
            //Get ConnectionString for client project
            var connectionString = node.ChildNodes[i].Attributes["connectionString"].Value;
            // Cut all 
            var dbName = node.ChildNodes[i].Attributes["connectionString"]
                .Value.Substring(connectionString.IndexOf("Catalog="));
            dbName = dbName.Replace("Catalog=", "");
            //Db Name that we will now replace
            dbName = dbName.Substring(0, dbName.IndexOf(";"));
            // System.Diagnostics.Debugger.Launch();
            doc.InnerXml = doc.InnerXml.Replace(dbName, newDb);
            doc.Save(path);
            break;
        }
    }
}

修改XML文件时收到未经授权的异常

你可以采取一些步骤。

首先,我要确保您的XML文件不是只读的。

如果这不起作用,那么您可以以管理员身份运行项目。如果你不是管理员,Windows不允许你修改一些目录。

如果你右键点击visual studio,并选择run as administrator,那么它会自动调试你的项目作为管理员。