0

仮想ディレクトリの物理パスが 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" には、変更する必要があるローカルの物理的な場所が含まれています。しかし、何らかの理由で上記は何もしません。例外はありませんが、プロパティの値は変更されていないようです。

4

2 に答える 2

1

私の悪い。VirtualDirectory ではなく ServerManager で変更をコミットしていました。

virtualDirectory.CommitChanges();
于 2010-03-31T14:55:43.653 に答える
-1
HttpServerUtility.MapPath('~/Virtual');
于 2010-03-30T22:51:59.340 に答える