টাইমার কাজের FeatureActivated এবং বৈশিষ্ট্য ব্যাপ্তি

আমি কাউকে একটি টাইমার কাজের জন্য আমার হস্তান্তর কিছু কোড দিয়ে কাজ করছি.  আমি এটা লিখতে ছিল তাই তিনি প্রকৃত বৈশিষ্ট্য অ্যাক্টিভেশন কোড দেওয়া ছিল না, অবশ্যই.  I took advantage of Andrew Connell’s famous blog post on the subject.

আমি ভিসুয়াল স্টুডিও ব্যবহার করছি 2010 and deployment kept failing with an error “Error occurred in deployment step ‘Add Solution’: Object reference not set to an instance of an object.”

I was taking his code too literally.  I was scoping the feature to the web application level, চিত্রের:

image

ফলে, the properties that are sent to the receiver are from the web application, not a site collection.  শেষ পর্যন্ত, the code looks like this:

public override void FeatureActivated(SPFeatureReceiverProperties properties)
{

    // Don’t do the following with web app scoped features, it leads to despair হাসি
    // SPSite site = properties.Feature.Parent as SPSite;

    SPWebApplication wa = properties.Feature.Parent as SPWebApplication;

    যদি (wa == null) throw new Exception("webapp2 is null.");

    foreach (SPJobDefinition job in wa.JobDefinitions)
    {

        চেষ্টা
        {
            যদি (job.Name == List_JOB_NAME)

                job.Delete();
        }
        ধরা (Exception e)
        {
            throw new Exception("marker 2");
        } // catch exception e
    }

    // install the job

    WeatherForecastTimerJob weatherForecastTimerJob =
        new WeatherForecastTimerJob(List_JOB_NAME, wa);

    SPMinuteSchedule schedule = new SPMinuteSchedule();
    schedule.BeginSecond = 0;
    schedule.EndSecond = 59;
    schedule.Interval = 5;
    weatherForecastTimerJob.Schedule = schedule;
    weatherForecastTimerJob.Update();

}

The key take-away is that when the feature is scoped to a web app, the SPFeatureReceiverProperties that SharePoint passes to your feature receiver has web app level parameters.  Andrew’s old blog entry assumes it’s scoped to the site collection.

</শেষ>

আমার ব্লগ এর জন্য সাবস্ক্রাইব করুন.

টুইটারে আমার অনুসরণ http://www.twitter.com/pagalvin

সাইফুল আলম চৌধুরী

আপনার ইমেইল ঠিকানা প্রচার করা হবে না. প্রয়োজনীয় ক্ষেত্রগুলি চিহ্নিত করা আছে *