Вопрос

I'm confused if i should use the using statement inside an event because the event is "asynchronous" and the object can be disposed before ending the job. Or am i missing something

 public override void FeatureActivated(SPFeatureReceiverProperties properties)
    {
        //var web = (SPWeb)properties.Feature.Parent;
        using(var web = (SPWeb)properties.Feature.Parent)
        {
           if (web == null) return;

           DreamerRemindersTimerJob.InstallTimerJob(web.Site.WebApplication, true);
           DreamerMetaDataTimerJob.InstallTimerJob(web.Site.WebApplication, true);
           DreamerCleanUpTimerJob.InstallTimerJob(web.Site.WebApplication, true);          
       DreamerWorkFlowErrorsTimerJob.InstallTimerJob(web.Site.WebApplication, true);
        }

    }
Это было полезно?

Решение

No, you should not use a using as you're not instantiating the object - you're getting a reference to an existing object. Let the event receiver handle the life cycle of its own objects.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с sharepoint.stackexchange
scroll top