IIS Helper, binding new domain using c#

 

public class IISHelper
{

public static string SiteName
{
get
{
return Config.GetSetting("SiteName");
}
}

public static void AddDomianTmSuite(string portalAlias)
{
using (ServerManager iis = new ServerManager())
{
Site site
= iis.Sites[SiteName];
if (site != null)
{
Binding binding
= GetBinding(site.Bindings, "*:80:" + portalAlias);
if (binding == null)
{
AddBinding(site.Bindings,
"*:80:" + portalAlias);
}
iis.CommitChanges();
}
}
}

public static void DeleteDomainTmSuite(string portalAlias)
{
using (ServerManager iis = new ServerManager())
{
Site site
= iis.Sites[SiteName];
if (site != null)
{
Binding binding
= GetBinding(site.Bindings, "*:80:" + portalAlias);
if (binding != null)
{
site.Bindings.Remove(binding);
}
iis.CommitChanges();
}

}
}

/// <summary>
/// Get Bingding
/// </summary>
/// <param name="bindings">collection of currnet site bindings</param>
/// <param name="BindingInformation">like *:80:asp.google.tst</param>
/// <returns>null or binding</returns>
public static Binding GetBinding(BindingCollection bindings, string BindingInformation)
{
foreach (Binding binding in bindings)
{
if (binding.BindingInformation.ToLower() == BindingInformation.ToLower())
{
return binding;
}
}

return null;
}

/// <summary>
/// Add Binding
/// </summary>
/// <param name="bindings">collection of currnet site bindings</param>
/// <param name="BindingInformation">like *:80:asp.google.tst</param>
public static void AddBinding(BindingCollection bindings, string BindingInformation)
{
Binding binding2
= bindings.CreateElement();
binding2.BindingInformation
= BindingInformation;
binding2.Protocol
= @"http";
bindings.Add(binding2);
}
}

 

官方参考:

http://www.iis.net/ConfigReference/system.applicationHost/sites/site/bindings

posted @ 2010-09-06 15:14 无尽思绪 阅读(152) 评论(3) 编辑 收藏

 回复 引用 查看   
#1楼 2010-09-06 21:30 路过秋天      
我也有相关的IIS操作的文章:
网站安装打包

 回复 引用 查看   
#2楼[楼主] 2010-09-07 09:15 无尽思绪      
@路过秋天
呵呵,你的文章不错

 回复 引用 查看   
#3楼 2011-11-14 10:07 6572789      
我现在也是想做怎么好的安装打包程序