แก้ไขข้อบกพร่องโซลูชันที่กำหนดเองสำหรับ Sharepoint 2010 ใน Visual Studio

ฉันสร้างไฟล์ WSP ด้วยตนเอง (โดยใช้ยูทิลิตี้ CAB) และอัปโหลดไปยังเซิร์ฟเวอร์ sharepoint 2010 ฉันต้องการดีบัก dll ที่ถูกบรรจุอยู่ในไฟล์ WSP นั้นเพื่อทดสอบว่าผู้ฟังจับเหตุการณ์ได้หรือไม่ ฉันแนบไปกับ w3wp.exe (ทุกอินสแตนซ์ที่ปรากฏ) อย่างไรก็ตาม ฉันพบว่าสัญลักษณ์ไม่ได้โหลดเพื่อให้ถึงจุดพักใดๆ และเธรดกำลังจะออกโดยมีข้อยกเว้นรันไทม์บางอย่าง

ฉันพลาดอะไรไปที่นี่? ฉันต้องคัดลอกไฟล์ PDB ของฉันไปที่ตำแหน่งใดโดยเฉพาะหรือไม่

ขอบคุณ


person Harish    schedule 11.01.2011    source แหล่งที่มา


คำตอบ (3)


คุณมีคำตอบในคำถามของคุณ ใช่ คุณต้องอัปโหลดไฟล์ pdb ของคุณไปที่ GAC โดยใช้พรอมต์คำสั่งและคัดลอกคำสั่งซึ่งจะพร้อมใช้งานภายใต้ C:\WINDOWS\assembly\GAC_MSIL> ในรูปแบบไดเร็กทอรี ให้เปิดและคัดลอก pdb ของคุณ

หรือตัวเลือกที่ง่ายกว่าคือคอมไพล์ wsp ของคุณในรูปแบบดีบัก

person Ashutosh Singh-MVP SharePoint    schedule 11.01.2011

คุณ ไม่จำเป็นต้องคัดลอกไฟล์สัญลักษณ์ PDB ลงใน GAC หากกำหนดค่า Visual Studio อย่างถูกต้อง:-

โชคดีที่การแก้ไขข้อบกพร่องใน GAC นั้นง่ายดายพอๆ กับใน BIN หากคุณกำหนดค่าสภาพแวดล้อมการพัฒนาอย่างถูกต้อง

น่าเสียดายที่มีเพียงไม่กี่คนที่รู้วิธีการทำเช่นนี้ เนื่องจากอินเทอร์เน็ตเต็มไปด้วยข้อมูลที่ไม่ดีซึ่งถูกระงับจาก .Net เวอร์ชันก่อนหน้า

คุณสามารถมองเห็นสิ่งเหล่านี้ได้อย่างง่ายดาย เนื่องจากพวกเขาจะบอกว่าคุณต้องคัดลอกสัญลักษณ์การแก้ไขข้อบกพร่อง (ไฟล์ .pdb) ไปยัง GAC ในตัวของมันเองนั่นจะไม่ทำงาน ทุกวันนี้มันก็ไม่จำเป็นเลยเช่นกัน

ในการกำหนดค่า VS ... เพื่อดีบักแอสเซมบลีอย่างถูกต้อง ให้ทำดังต่อไปนี้:

person Ryan    schedule 11.01.2011
comment
นี่ไม่ใช่แนวทางที่มีประสิทธิภาพมากนักเนื่องจากตัวเลือก Just My Code อ้างว่าเพิ่มประสิทธิภาพการโหลดชุดประกอบ - person Ashutosh Singh-MVP SharePoint; 11.01.2011

คุณพูดถึงแท็ก Sandbox ในคำถามของคุณ ดังนั้นคุณต้องแนบไปกับ SPUCWorkerProcess.exe ไม่ใช่ w3wp.exe โค้ดแซนด์บ็อกซ์จะทำงานในตัวทำงานที่แยกจากกัน

person Francisco Aquino    schedule 05.09.2011