Eu estou traballando cun código que alguén entregado a min para un traballo de axustado dunha decena. Non había solicitado o código de activación real función que tiña que gravala-lo, por suposto. Aproveitei Pos Andrew Connell blog famoso sobre o tema.
Está a usar o Visual Studio 2010 and deployment kept failing with an error “Error occurred in deployment step ‘Add Solution’: Referencia de obxecto non está definida para unha instancia dun obxecto. "
Eu estaba tomando o seu código moi literalmente. Eu estaba alcance o recurso ao nivel da aplicación web, como se mostra:
Como resultado, as propiedades que son enviados para o receptor son da aplicación web, non un conxunto de sitios. A finais, o código está así:
public override void FeatureActivated(Propiedades SPFeatureReceiverProperties)
{// Non facer o seguinte con recursos da web app ámbito, que leva á desesperación
// Local SPSite = properties.Feature.Parent como SPSite;SPWebApplication wa properties.Feature.Parent = como SPWebApplication;
se (wa == null) throw new Exception("Webapp2 é nulo.");
foreach (Traballo SPJobDefinition T: Microsoft.SharePoint.Administration.SPJobDefinition en wa.JobDefinitions)
{intentar
{
se (job.Name == List_JOB_NAME)job.Delete();
}
incorporarse (Exception e)
{
throw new Exception("Marcador de 2");
} // incorporarse e excepción
}// instala o traballo
WeatherForecastTimerJob weatherForecastTimerJob =
novo WeatherForecastTimerJob(List_JOB_NAME, wa);SPMinuteSchedule axenda = SPMinuteSchedule novo();
schedule.BeginSecond = 0;
schedule.EndSecond = 59;
schedule.Interval = 5;
weatherForecastTimerJob.Schedule horario =;
weatherForecastTimerJob.Update();}
A clave take-away é que cando o recurso é delimitado para unha aplicación web, os SPFeatureReceiverProperties que o SharePoint pasa para o seu receptor recurso ten parámetros nivel de web app. Entrada de André antigo blog asume que é o ámbito do conxunto de sitios web.
</final>
Siga-me no Twitter http://www.twitter.com/pagalvin