zoukankan      html  css  js  c++  java
  • C# IIS站点管理--Microsoft.Web.Administration.dll

    Microsoft中提供了管理IIS7及以上版本一个非常强大的API - Microsoft.Web.Administration.dll,利用该API可以让我们很方便的以编程的方式管理和设定IIS的各项配置信息了。

    Microsoft.Web.Administration.dll位于IIS目录下(%WinDir%System32InetSrv)下,在项目中添加引用后就可以使用这些API了。

    参考资料:https://msdn.microsoft.com/en-us/library/microsoft.web.administration(v=vs.90).aspx

    下面通过代码进行web发布:

    1、添加 Microsoft.Web.Administration.dll 引用

    2、引用命名空间 using Microsoft.Web.Administration;

         /// <summary>
            /// 使用代码进行web发布
            /// </summary>
            /// <param name="webName">web应用程序名称</param>
            /// <param name="port">web应用程序端口</param>
            /// <returns></returns>
            private bool PublishWeb(string webName, int port)
            {
                try
                {
                    ServerManager iismanager = new ServerManager();
                    //判断应用程序池是否存在
                    if (iismanager.ApplicationPools[webName] != null)
                    {
                        iismanager.ApplicationPools.Remove(iismanager.ApplicationPools[webName]);
                    }
                    //判断web应用程序是否存在
                    if (iismanager.Sites[webName] != null)
                    {
                        iismanager.Sites.Remove(iismanager.Sites[webName]);
                    }
                    //建立web应用程序(第二个参数为安装文件的地址)
                    iismanager.Sites.Add(webName, "c:\webFilePath", port);
                    //添加web应用程序池
                    ApplicationPool pool = iismanager.ApplicationPools.Add(webName);
                    //设置web应用程序池的Framework版本(注意版本号大小写问题)
                    pool.ManagedRuntimeVersion = "v4.0";
                    //设置是否启用32为应用程序
                    pool.SetAttributeValue("enable32BitAppOnWin64", true);
                    //设置web网站的应用程序池
                    iismanager.Sites[webName].Applications[0].ApplicationPoolName = webName;
                    //提交更改
                    iismanager.CommitChanges();
                    return true;
                }
                catch (Exception ex)
                {
                    throw (ex);
                }
            }

    在对web应用程序池属性进行设置时,可以参考IIS管理器中对应的属性,点击每个属性在说明框中都会有属性的名称,通过该名称可以通过代码设置对应的值。

     

  • 相关阅读:
    【剑指offer】对称的二叉树
    【剑指offer】数组中的逆序对
    【剑指offer】不用加减乘除做加法
    【剑指offer】和为S的连续正数序列
    【剑指offer】删除链表中重复的结点
    【剑指offer】平衡二叉树
    Math.ceil()、Math.floor()和Math.round()
    document.querySelectorAll遍历
    JS选择器querySelector和~All,三个原生选择器
    js 操作select和option常见用法
  • 原文地址:https://www.cnblogs.com/zhaochengshen/p/7976894.html
Copyright © 2011-2022 走看看