我需要更改虚拟目录的物理路径在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不是物理的。有什么帮助吗?
更新:
virtualDirectory.Properties["Path"].Value = "c:\newlocation";
srvMgr.CommitChanges();
DirectoryEntry属性“Path”包含我需要更改的本地物理位置。但出于某种原因,上述情况无效。我没有看到任何例外,但属性值似乎没有变化。
答案 0 :(得分:1)
我的坏。我在ServerManager上而不是在VirtualDirectory上提交更改。
virtualDirectory.CommitChanges();
答案 1 :(得分:-1)
HttpServerUtility.MapPath('~/Virtual');