ผมทำงาน ด้วยรหัสบางอย่างที่คนตกฉันสำหรับงานจับเวลา เขาไม่รู้ให้รหัสเปิดใช้งานคุณลักษณะที่แท้จริงจึงได้เขียน, แน่นอน ฉันใช้ประโยชน์จาก โพสต์บล็อกที่มีชื่อเสียงของแอนดรู Connell ในเรื่อง.
ใช้ Visual Studio 2010 และจัดเก็บล้มเหลว ด้วยข้อผิดพลาด "ข้อผิดพลาดในขั้นตอนการปรับใช้ 'เพิ่มโซลูชั่น': การอ้างวัตถุอิงไม่ได้ตั้งค่าอินสแตนซ์ของวัตถุ"
ฉันถูกนำรหัสของเขาเกินไปอย่างแท้จริง ฉันถูกกำหนดโครงร่างวิจัยคุณลักษณะระดับแอพลิเคชันเว็บ, ดังที่แสดง:
เป็นผล, คุณสมบัติที่ส่งไปยังผู้รับได้จากแอพลิเคชันเว็บ, ไม่มีไซต์คอลเลกชัน ในสุด, รหัสมีลักษณะดังนี้:
สาธารณะแทนโมฆะ FeatureActivated(คุณสมบัติ SPFeatureReceiverProperties)
{// ไม่ มี web app ที่ครอบคลุมถึงคุณลักษณะต่อไปนี้, จะนำไปสู่ความสิ้นหวัง
// ไซต์ SPSite =คุณสมบัติFeature.Parent เป็น SPSite;SPWebApplication wa =คุณสมบัติFeature.Parent เป็น SPWebApplication;
ถ้า (wa ==ค่า null) โยนข้อยกเว้นใหม่("webapp2 เป็น null");
foreach (งาน SPJobDefinition ใน waJobDefinitions)
{ลอง
{
ถ้า (งานชื่อ== List_JOB_NAME)งานลบ();
}
จับ (อีเว้น)
{
โยนข้อยกเว้นใหม่("เครื่องหมาย 2 ");
} // จับอีเว้น
}// ติดตั้งงาน
WeatherForecastTimerJob weatherForecastTimerJob =
WeatherForecastTimerJob ใหม่(List_JOB_NAME, wa);ตาราง SPMinuteSchedule = SPMinuteSchedule ใหม่();
กำหนดการBeginSecond = 0;
กำหนดการEndSecond = 59;
กำหนดการช่วง = 5;
weatherForecastTimerJob.Schedule =กำหนดการ;
weatherForecastTimerJob.Update();}
คีย์หน่อยคือเมื่อ app เว็บเซิร์ฟคุณลักษณะ, SPFeatureReceiverProperties ที่ SharePoint ผ่านการรับสัญญาณของคุณคุณลักษณะ web app ระดับพารามิเตอร์ได้ แอนดรูว์รายการบล็อกเก่าสันนิษฐานว่าเซิร์ฟไซต์คอลเลกชัน.
</สิ้นสุด>
ทำตามฉันใน Twitter ที่ http://www.twitter.com/pagalvin