部署功能SP2013时出错

时间:2013-03-12 17:48:29

标签: c# sharepoint deployment sharepoint-2013

我已经创建了一个功能,我想在安装时激活它。 这是代码:

public override void FeatureInstalled(SPFeatureReceiverProperties properties)
{
    SPWeb web = properties.Feature.Parent as SPWeb;
    SPWebTemplateCollection existingWebTemps = web.GetAvailableWebTemplates(1033);
    Collection<SPWebTemplate> newWebTemps = new Collection<SPWebTemplate>();        
    for (int i = 0; i < existingWebTemps.Count; i++)
    {
        if (!existingWebTemps[i].Title.ToLower().Contains("blog"))
        {
            newWebTemps.Add(existingWebTemps[i]);
        }
    }
    web.SetAvailableWebTemplates(newWebTemps, 1033);
    web.Update();

    string fID = "aeb3aa40-8a42-4577-bed2-a0e65eff8b04";
    Guid gfID = new Guid(fID);
    SPFeatureCollection featatv = web.Features;
    Boolean control = true;
    foreach (SPFeature myfeat in featatv)
    {
        if (myfeat.DefinitionId == gfID)
        {
            control = false;
        }
    }
    if (control == true)
    {
        web.Features.Add(gfID);
    }

    web.Dispose();
}

当我部署时,我收到错误:

部署步骤中出错“添加解决方案”:未将对象引用设置为对象的实例。

我无法理解为什么我会收到此错误。 有什么想法吗? 谢谢!

0 个答案:

没有答案