ฉันตั้งค่าโครงการเป็น. NET Framework 4.0 พอแอดSystem.IO.Packaging
มันบอกว่าไม่มี นอกจากนี้ยังไม่ปรากฏขึ้นเมื่อฉันพยายามเพิ่มเป็นข้อมูลอ้างอิงถึงโครงการ
ฉันSystem.IO.Packaging
จะเพิ่มในโครงการ C # ของฉันได้อย่างไร
ฉันตั้งค่าโครงการเป็น. NET Framework 4.0 พอแอดSystem.IO.Packaging
มันบอกว่าไม่มี นอกจากนี้ยังไม่ปรากฏขึ้นเมื่อฉันพยายามเพิ่มเป็นข้อมูลอ้างอิงถึงโครงการ
ฉันSystem.IO.Packaging
จะเพิ่มในโครงการ C # ของฉันได้อย่างไร
คำตอบ:
ตามความคิดเห็นของผู้ใช้ในหน้า MSDN นี้คุณต้องเพิ่มการอ้างอิงไปยังไลบรารี WindowsBase .Net
สำหรับโซลูชัน C # ใน Visual Studio 2010 ที่มี. NET 4.0:
C: \ Program Files (x86) \ Reference Assemblies \ Microsoft \ Framework \ .NETFramework \ v4.0 \ WindowsBase.dll
บันทึกโซลูชัน (โดยเฉพาะอย่างยิ่งหากคุณกำลังรวบรวมจากบรรทัดคำสั่งด้วย MSBuild) และตอนนี้คุณควรจะสามารถเพิ่มคำสั่งโดยใช้ System.IO.Packagingที่ด้านบนของไฟล์. cs ของคุณโดยไม่มีข้อผิดพลาดปรากฏขึ้น
เราสามารถเพิ่ม WindowsBase.dll ใน Dot Net framework 3.5 ได้เช่นกัน ฉันใช้เครื่อง XP และ Path สำหรับ WindowsBase.dll คือ
C: \ Program Files \ Reference Assemblies \ Microsoft \ Framework \ .NETFramework \ v3.5 \ Profile \ Client \ WindowsBase.dll
ตัวอย่างการใช้งานSystem.IO.packaging
มีให้ที่นี่ -
System.IO.Packaging
เป็นเนมสเปซไม่ใช่ข้อมูลอ้างอิง ส่วนใหญ่ (ทั้งหมด?) ของคลาสภายในเนมสเปซเช่นZipPackageถูกปรับใช้ในWindowsBase.dll
.
ตรวจสอบให้แน่ใจว่าคุณมีข้อมูลอ้างอิงถึงWindowsBase.dll
- ถ้าคุณมีคุณสามารถเพิ่ม: โดยใช้System.IO.Packaging;
ไฟล์. cs ของคุณและคุณจะสบายดี
โปรดทราบว่าคุณสามารถเห็นนี้ในเอกสารสำหรับการเรียนใด ๆ ใน MSDN ตัวอย่างเช่นในZipPackage
รายการ:
Namespace: System.IO.Packaging
Assembly: WindowsBase (in WindowsBase.dll)
System.IO.Packaging
namespace WindowsBase
ให้บริการโดย เมื่อคุณเพิ่มการอ้างอิงเพิ่มเป็นข้อมูลอ้างอิงแทนการพยายามที่จะหาWindowsBase
System.IO.Packaging
คุณต้องเพิ่มข้อมูลอ้างอิงไปยัง WindowsBase.dll System.IO.Packaging อยู่ในนั้น
ดูบทความนี้สำหรับรายละเอียดเพิ่มเติม:
http://msdn.microsoft.com/en-us/library/system.io.packaging.package.aspx
System.IO.Packaging v4.0.30319 อยู่ใน WindowsBase.dll v4.0.30319
สำหรับ windows 10 คุณอาจพบได้ที่นี่
C: \ Windows \ Microsoft.NET \ ประกอบ \ GAC_MSIL \ WindowsBase \ v4.0_4.0.0.0__31bf3856ad364e35 \
ในกรณีของฉันฉันใช้ตัวจัดการ Ashx เพื่อให้ใช้งานได้คุณต้องเพิ่มแอสเซมบลีในโครงการและตัวจัดการ:
<%@ WebHandler Language="C#" Class="UploadExcelFile2" %>
<%@ Assembly Name="WindowsBase, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" %>
ในที่สุดสิ่งนี้ก็ใช้ได้ผลสำหรับฉันลองหลายครั้งเพื่อเพิ่ม WindowsBase เป็นข้อมูลอ้างอิง (รีสตาร์ท VS เครื่องรีสตาร์ทด้วย) แต่ก็ยังใช้งานไม่ได้จนกว่าฉันจะเพิ่มสิ่งนี้อย่างชัดเจนในหน้า aspx ของฉัน ฉันใช้: <%@ Assembly Name="WindowsBase, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" %>
เนื่องจาก dll ที่ฉันอ้างถึงคือเวอร์ชัน 4.0