【发布时间】:2014-09-01 17:40:42
【问题描述】:
我正在尝试使用 C# 中的 Microsoft.Web.Administration dll 在 IIS 中创建一个站点。我正在使用以下代码
using (var serverManager = new ServerManager())
{
ApplicationPool pool = serverManager.ApplicationPools.Add(ClientDomain);
pool.ManagedRuntimeVersion = "v4.0";
Site site = serverManager.Sites.Add(SiteName, httpProtocol, httpBindingInformation, physicalPath);
site.Bindings.Add(httpsBindingInformation, httpsProtocol);
serverManager.CommitChanges();
}
当我从 asp.net 项目运行代码时,我收到以下异常“方法或操作未实现”,但如果从控制台项目运行相同的代码,它工作正常。这是异常的详细信息
at Microsoft.Web.Administration.Interop.IAppHostProperty.get_Value()
at Microsoft.Web.Administration.ConfigurationElement.GetPropertyValue(IAppHostProperty property)
at Microsoft.Web.Administration.ConfigurationElement.GetAttributeValue(String attributeName)
at Microsoft.Web.Administration.Binding.get_CertificateHash()
at Microsoft.Web.Administration.BindingCollection.Add(Binding binding)
at Microsoft.Web.Administration.BindingCollection.Add(String bindingInformation, String bindingProtocol)
at TestProject.BLL.CRMSiteManagement.CRMSiteIISSetup.Process() in e:\CRMSiteManagement\CRMSiteIISSetup.cs:line 35
at TestProject.BLL.CRMSiteManagement.CRMSiteService.CreateNewCRMSite(CRMSite newSite) in e:CRMSiteManagement\CRMSiteService.cs:line
似乎是权利问题,但我不知道如何解决。 更新 1: 本地主机上的以下代码行出现错误
site.Bindings.Add(httpsBindingInformation, httpsProtocol);
【问题讨论】:
-
检查this other question,它不完全相同,但有一个如何创建站点的示例代码...stackoverflow.com/questions/9128732/…