Stajt ilhom jaħdmu ma 'xi kodiċi li xi ħadd mogħtija lili għal xogħol tajmer. Hu ma kienx ipprovda l-kodiċi attwali attivazzjoni karatteristika so I kellu jikteb dan, tal-kors. I ħa vantaġġ ta ' Andrew Connell famuż blog post dwar is-suġġett.
Jien jużaw Visual Studio 2010 and deployment kept failing with an error “Error occurred in deployment step ‘Add Solution’: Referenza Għan mhux stabbiliti għal istanza ta 'oġġett. "
I kien qed kodiċi tiegħu wisq litteralment. I kien scoping l-karatteristika li l-livell ta 'applikazzjoni web, kif muri:
Bħala riżultat, il-proprjetajiet li huma mibgħuta lir-riċevitur huma mill-applikazzjoni tal-web, mhux kollezzjoni sit. Fl-aħħar, il-kodiċi tidher bħal dan:
null override pubbliku FeatureActivated(Proprjetajiet SPFeatureReceiverProperties)
{// M'għandekx tagħmel dan li ġej ma 'web app karatteristiċi scoped, din twassal għal disprament
// Sit SPSite = properties.Feature.Parent bħala SPSite;SPWebApplication wa = properties.Feature.Parent bħala SPWebApplication;
jekk (wa == null) tarmi Eċċezzjoni ġdida("webapp2 is null.");
foreach (Xogħol SPJobDefinition fl wa.JobDefinitions)
{jippruvaw
{
jekk (job.Name == List_JOB_NAME)job.Delete();
}
qabda (Eċċezzjoni e)
{
tarmi Eċċezzjoni ġdida("marker 2");
} // qabda eċċezzjoni e
}// tinstalla l-impjieg
WeatherForecastTimerJob weatherForecastTimerJob =
WeatherForecastTimerJob ġdida(List_JOB_NAME, wa);SPMinuteSchedule iskeda = SPMinuteSchedule ġdida();
schedule.BeginSecond = 0;
schedule.EndSecond = 59;
schedule.Interval = 5;
weatherForecastTimerJob.Schedule = iskeda;
weatherForecastTimerJob.Update();}
Iċ-ċavetta take-away hija li meta l-karatteristika hija scoped għal app web, l SPFeatureReceiverProperties li SharePoint jgħaddi li riċevitur karatteristika tiegħek parametri web app livell. Blog dħul qodma Andrew jassumi huwa scoped għall-ġbir sit.
</aħħar>
Follow lili Twitter fi http://www.twitter.com/pagalvin