Referência de objeto não definida para uma instância de um objeto na implantação de recursos - Não é possível implantar mesmo
-
29-09-2020 - |
Pergunta
Estou escrevendo código para código ativado por recurso.Mas quando tento implantar minha solução através do VS 2010, ele diz que a implantação falhou Erro na ativação do recurso:Referência de objeto não definida para uma instância de um objeto.
Não consigo depurar, pois isso não me permite implantar o código.Eu tentei colocar
System.Diagnostics.Debugger.Break();
no início do meu método FeatureActivated.Alguma ideia?
public override void FeatureActivated(SPFeatureReceiverProperties properties)
{
using(SPSite spSite = new SPSite(HttpContext.Current.Request.Url.ToString()))
{
using(SPWeb spWeb = spSite.OpenWeb())
{
}
}
}
Solução
Instruções para Visual Studio 2010:
Clique em "Projeto" no menu e depois em "propriedades"
Clique em "SharePoint à esquerda e mude a configuração de implantação ativa para "Sem ativação".
Comece a depuração e ative o recurso manualmente por meio da IU.Agora você deve ser capaz de depurar através das etapas de ativação de recursos se tiver definido os pontos de interrupção adequadamente.
Outras dicas
Se seu recurso tiver escopo de site, você poderá obter o objeto SPSite da seguinte maneira:
var spSite = properties.Feature.Parent as SPSite;
Se seu recurso tiver escopo na Web, você poderá obter o objeto SPSite da seguinte maneira:
var spSite = (properties.Feature.Parent as SPWeb).Site;