2015-11-25 67 views
0

我可以完全訪問另一臺計算機上存在的文件,並且在鍵入「\ username-txd \ abcFolder \ Configuration \ MediaManagerConfig \ Web.config「在運行命令行我能夠訪問上述文件,但當我嘗試更新此特定文件中的任何屬性的值時,它不允許我更新。使用C#替換另一臺計算機(共享文件夾/網絡)上存在的文件(web.config)中的值

代碼:中impolemented CODEC#海賊王

當我的值傳遞給xmlDoc.Load(@filename);

文件名顯示爲我想要傳遞的值。但是,只要我繼續調試代碼,就會看到我的文件路徑附加了「d:/」值。

和文件名變爲,文件名= 「d:\用戶名,TXD \ abcFolder \配置\ MediaManagerConfig \ Web.config中」

爲什麼d://被追加。它是指我的本地D驅動器?

註釋行是一些選項我試過

 public void updateFileData() 
     { 

      private string filename="\\vinayb2txd\\atish\\Configuration\\MediaManagerConfig\\Web.config"; 

     private string newElemetValue="qwerty"; 


     //xmlDoc.Load("\\vinayb2-txd\\atish\\Configuration\\MediaManagerConfig\\Web.config"); 

    //var path = System.Web.HttpContext.Current.Server.MapPath(@filename); 

    //string serverFilepath= Server.MapPath(@filename); 

    // FileStream xmlFile = new FileStream(filename, FileMode.Open,FileAccess.Read, FileShare.Read); 

    // xmlDoc.Load(xmlFile); 

    // string abc=new Uri(filename).LocalPath; 

     xmlDoc.Load(@filename); 
    XmlNodeList elementList = xmlDoc.GetElementsByTagName("add"); 
    for (int i = 0; i < elementList.Count; i++) 
    { 
     if (elementList[i].Attributes["key"].Value == elementKey) 
     { 
      elementList[i].Attributes["value"].Value = newElementValue; 
      break; 
     } 
     xmlDoc.Save(filename); 
    } 

    }      

回答

1

您在文件名字符串的開始需要四個斜槓它被解釋爲一個UNC路徑。否則,雙斜槓將轉義爲單斜槓,該斜槓被解釋爲當前工作目錄的根驅動器。

0

使用:

private string filename="\\\\vinayb2txd\\atish\\Configuration\\MediaManagerConfig\\Web.config"; 

private string [email protected]"\\vinayb2txd\atish\Configuration\MediaManagerConfig\Web.config"; 
當你定義的文件名作爲 「\ vinayb2txd \ atish \配置\ MediaManagerConfig \ Web.config中」

。它將其作爲相對路徑

相關問題