Как установить версию .NET Framework, используемую при создании жизненного каталога IIS? - PullRequest
1 голос
/ 24 марта 2009

У меня есть метод, который создает виртуальный каталог. Как я могу установить .NET Framework на версию 2 при создании виртуального каталога?

Мой метод выглядит так:

private static void CreateVDir(string metabasePath, string vDirName, string physicalPath)
{
    //  metabasePath is of the form "IIS://<servername>/<service>/<siteID>/Root[/<vdir>]"
    //    for example "IIS://localhost/W3SVC/1/Root".
    //  vDirName is of the form "<name>", for example, "MyNewVDir".
    //  physicalPath is of the form "<drive>:\<path>", for example, "C:\Inetpub\Wwwroot".
    Console.WriteLine("\nCreating virtual directory {0}/{1}, mapping the Root application to {2}:",
                      metabasePath, vDirName, physicalPath);

    DirectoryEntry site = new DirectoryEntry(metabasePath);
    string className = site.SchemaClassName;
    if ((className.EndsWith("Server")) || (className.EndsWith("VirtualDir")))
    {
        DirectoryEntries vdirs = site.Children;
        DirectoryEntry newVDir = vdirs.Add(vDirName, (className.Replace("Service", "VirtualDir")));
        newVDir.Properties["Path"][0] = physicalPath;
        newVDir.Properties["AccessScript"][0] = true;
        // These properties are necessary for an application to be created.
        newVDir.Properties["AppFriendlyName"][0] = vDirName;
        newVDir.Properties["AppIsolated"][0] = "1";
        newVDir.Properties["AppRoot"][0] = 
           "/LM" +
           metabasePath.Substring(metabasePath.IndexOf("/", ("IIS://".Length)));
        newVDir.CommitChanges();
        Console.WriteLine(" Done.");
    }
    else
        Console.WriteLine(
            " Failed. A virtual directory can only be created in a site or virtual directory node.");
}

Ответы [ 2 ]

2 голосов
/ 24 марта 2009

В свойстве «ScriptMaps» хранятся сопоставления конфигурации. Именно здесь вы можете сопоставить файлы * .aspx для обработки в ASP.NET. Пример: Создание сопоставлений ISAPI программным способом .

0 голосов
/ 24 марта 2009

После создания виртуального каталога вы можете запустить aspnet_regiis -s из каталога .NET Framework по вашему выбору.

В моей системе команда будет выглядеть примерно так:

C: \ Windows \ Microsoft.NET \ Framework64 \ v2.0.50727 \ aspnet_regiis -s W3SVC / 1 / ROOT / SampleApp1

Я успешно выполнил это из пользовательского действия в моем установщике.

...