2010-03-30 90 views
0

我需要更改虛擬目錄的物理路徑在C#中的位置。這是通過安裝程序執行的,因此它將在虛擬目錄所在的機器上運行。如何在IIS7和C#中更改虛擬目錄的物理路徑?

這是我到目前爲止有:

using (DirectoryEntry webSiteRoot = WmiUtility.GetWebSiteRootDirectory(webSite)) 
      { 
       DirectoryEntry virtualDirectory = 
        WmiUtility.GetVirtualDirectoryByName(webSiteRoot, vDirName); 

       string currentPath = virtualDirectory.Path; 


        virtualDirectory.Path = "C:\somepath" 
        srvMgr.CommitChanges(); 

這樣看來,該VirtualDirectory.Path不是物理上的。任何幫助?

UPDATE:

virtualDirectory.Properties["Path"].Value = "c:\newlocation"; 

        srvMgr.CommitChanges(); 

的DirectoryEntry屬性的 「路徑」 包含了本地的物理,位置,我需要改變。但由於某種原因,上述內容什麼都不做。我沒有看到任何異常,但屬性值似乎沒有變化。

回答

-1
HttpServerUtility.MapPath('~/Virtual'); 
+0

我想也許你正在考慮網絡。這是本地運行託管應用程序的Web服務器的代碼。換句話說,這不是一個ASP或Silverlight問題。 – Nick 2010-03-31 01:52:55

+0

哎呀,我的歉意!我以爲你試圖獲得路徑:) – mrwayne 2010-03-31 22:08:12

1

我的壞。我在ServerManager上提交更改,而不是在VirtualDirectory上。

virtualDirectory.CommitChanges(); 
相關問題