วิธีทำงานกับ Bibliography ใน .NET
คู่มือนี้แสดงวิธีสร้างข้อมูลแหล่งอ้างอิงที่อยู่เบื้องหลังฟีเจอร์บรรณานุกรมของ Word ใน Aspose.Words FOSS สำหรับ .NET, โดยใช้ the Source, Contributor, Person, และ Corporate คลาสใน the Aspose.Words.Bibliography namespace. ครอบคลุมการสร้างบันทึกแหล่งข้อมูล, การเลือกประเภทแหล่งที่เหมาะสม, การกำหนดผู้ร่วมเขียนแบบบุคคลและองค์กร, และการเพิ่มแหล่งข้อมูลเพื่อให้ CITATION and BIBLIOGRAPHY ฟิลด์สามารถอ้างอิงพวกมันได้.
คู่มือแบบขั้นตอนต่อขั้นตอน
ขั้นตอนที่ 1: ติดตั้งแพคเกจ
Aspose.Words FOSS for .NET ยังไม่ได้เผยแพร่แพคเกจ NuGet – ให้สร้างไลบรารีจากซอร์สแทน. คัดลอก https://github.com/aspose-words-foss/Aspose.Words-FOSS-for-.NET.git, จากนั้นสร้าง Aspose.Words.sln ในโหมด Release ด้วย .NET SDK และอ้างอิงแอสเซ็มบลี Aspose.Words ที่ได้จากโปรเจกต์ของคุณ. ไลบรารีนี้มุ่งหมายที่ .NET Standard 2.0, ดังนั้นมันทำงานบน .NET Framework 4.6.2+ และ .NET 6/8/10.
ขั้นตอนที่ 2: นำเข้าคลาสที่จำเป็น
เพิ่มคำสั่ง using Aspose.Words; สำหรับ Document, และคำสั่ง using Aspose.Words.Bibliography; สำหรับ Source, SourceType, Contributor, ContributorCollection, Person, PersonCollection, และ Corporate.
ขั้นตอน 3: เข้าถึงข้อมูลบรรณานุกรมของเอกสาร
Document.Bibliography คืนค่า Bibliography ตัวอย่าง. คุณสมบัติ Sources ของมันเป็น IList<Source> ที่เก็บบันทึกแหล่งที่มาทั้งหมดที่มีในเอกสาร, และ BibliographyStyle บันทึกชื่อสไตล์การอ้างอิง – เช่น APA หรือ MLA – ที่ควรนำไปใช้เมื่อฟิลด์ BIBLIOGRAPHY ถูกอัปเดต.
ขั้นตอน 4: สร้างบันทึกแหล่งที่มา
สร้าง Source ด้วย Source(tag, sourceType): Tag คือรหัสสั้นที่ FieldCitation.SourceTag และ FieldBibliography.SourceTag จะอ้างอิงในภายหลัง, และ SourceType คือค่าตัวแปร enum ที่ระบุประเภทของแหล่งที่มา – Book, BookSection, JournalArticle, ArticleInAPeriodical, ConferenceProceedings, Report, Patent, Case, InternetSite, DocumentFromInternetSite, Interview, Film, SoundRecording, Performance, Art, Electronic, หรือ Misc. ให้แต่ละ Source มี Tag ที่ไม่ซ้ำกัน – ค่านี้เป็นค่าเดียวที่ฟิลด์การอ้างอิงใช้เพื่อค้นหาบันทึกที่ถูกต้อง.
ขั้นตอน 5: เติมข้อมูลฟิลด์สำหรับประเภทแหล่งที่มาที่เลือก
นอกจาก Title และ ShortTitle แล้ว, Source เปิดเผยฟิลด์เฉพาะหมวดหมู่หลายสิบฟิลด์ – เติมข้อมูลเฉพาะฟิลด์ที่เกี่ยวข้องกับ SourceType ที่เลือกเท่านั้น. แหล่งที่มาประเภทหนังสือใช้ BookTitle, Edition, NumberVolumes, Volume, Pages, และ ChapterNumber. แหล่งที่มาประเภทวารสารใช้ JournalName, PeriodicalTitle, PublicationTitle, และ Issue. แหล่งที่มาประเภทเว็บใช้ InternetSiteTitle, Url, DayAccessed, MonthAccessed, และ YearAccessed. แหล่งที่มาทางกฎหมายใช้ CaseNumber, AbbreviatedCaseNumber, Court, และ Reporter. แหล่งที่มาประเภทบันทึกและการกระจายสัญญาณใช้ AlbumTitle, Broadcaster, BroadcastTitle, RecordingNumber, Medium, ProductionCompany, Distributor, Station, และ Theater. ฟิลด์ทั่วไปที่ใช้ได้กับแหล่งที่มาส่วนใหญ่: Publisher, City, StateOrProvince, CountryOrRegion, Year, Month, Day, Comments, Guid, Doi, Version, RefOrder, และ Lcid.
ขั้นตอน 6: กำหนดผู้ร่วมทำงานเป็นรายบุคคล
Source.Contributors คืนค่า ContributorCollection ที่มีคุณสมบัติโดยหนึ่งต่อบทบาทผู้ร่วมทำงาน – Author, Editor, Translator, Compiler, Composer, Conductor, Counsel, Director, Interviewee, Interviewer, Inventor, Performer, Producer, Writer, Artist, และ BookAuthor – ทั้งหมดมีชนิดเป็นคลาสฐานเชิงนามธรรม Contributor. กำหนด Person (สร้างจาก Last, First, Middle) ให้กับคุณสมบัติบทบาทสำหรับบุคคลที่ระบุชื่อเดียว.
ขั้นตอนที่ 7: กำหนดผู้ร่วมเขียนหลายคนหรือองค์กร
เมื่อบทบาทมีผู้ร่วมเขียนบุคคลหลายคน ให้กำหนด PersonCollection แทนการใช้ Person เพียงหนึ่งเดียว – PersonCollection ยังสืบทอดมาจาก Contributor และดำเนินการ IEnumerable<Person> พร้อมด้วย Add(), Remove(), RemoveAt(), Clear(), Contains() และ Count เพื่อจัดการสมาชิกของมัน เมื่อผู้ร่วมเขียนเป็นองค์กรแทนบุคคล ให้กำหนด Corporate (สร้างจาก Name) ไปยังคุณสมบัติบทบาทแทน Person, PersonCollection และ Corporate ทั้งหมดสอดคล้องกับคุณสมบัติบทบาทประเภท Contributor เดียวกัน ดังนั้นเลือกตามที่เหมาะกับแหล่งข้อมูล.
ขั้นตอนที่ 8: เพิ่มแหล่งข้อมูลเพื่อให้ฟิลด์อ้างอิงสามารถแก้ไขได้
เพิ่มทุกรายการที่เสร็จสมบูรณ์ Source to Document.Bibliography.Sources ก่อนทำการอัปเดตใด ๆ CITATION or BIBLIOGRAPHY ฟิลด์ที่อ้างอิงถึงมัน – แหล่งข้อมูลที่ถูกสร้างขึ้นแต่ไม่เคยเพิ่มเข้ามาไม่มีอะไรให้ฟิลด์ที่อ้างอิงแก้ไขได้. Source บันทึกเพียงให้ข้อมูลเท่านั้น; พวกมันไม่ได้แสดงข้อความอ้างอิงหรือบรรณานุกรมด้วยตนเอง การแสดงผลเกิดขึ้นผ่าน FieldCitation and FieldBibliography, ครอบคลุมใน คู่มือการเชื่อมโยงและอ้างอิง.
ปัญหาทั่วไปและวิธีแก้ไข
ฟิลด์ CITATION หรือ BIBLIOGRAPHY ไม่สามารถแก้ไขได้ The Source.Tag ไม่ตรงกับฟิลด์โดยตรง SourceTag. ยืนยันว่าแท็กตรงกันและว่า Source ถูกเพิ่มจริงไปยัง Document.Bibliography.Sources.
ประเภทผู้มีส่วนร่วมที่ผิดถูกกำหนดให้กับบทบาท A Person ถูกกำหนดในกรณีที่มีผู้มีส่วนร่วมหลายคนหรือกลับกัน ใช้ PersonCollection สำหรับหลายบุคคลในบทบาทเดียว, Person สำหรับบุคคลเดียว, และ Corporate สำหรับองค์กร.
ฟิลด์แหล่งข้อมูลดูไม่สอดคล้องกับประเภทของมัน ฟิลด์สำหรับประเภทที่ต่างกัน SourceType ถูกเติมข้อมูล – ตัวอย่างเช่น ฟิลด์เว็บเช่น Url and DayAccessed ตั้งค่าใน Book แหล่งข้อมูล. เติมฟิลด์เฉพาะที่เกี่ยวข้องกับที่เลือก SourceType.
แหล่งข้อมูลที่มีผู้เขียนหลายคนจะแสดงเพียงชื่อเดียว หนึ่งเดียว Person ถูกกำหนดให้ Author แทน a PersonCollection. สร้าง a PersonCollection, เพิ่มแต่ละ Person with Add(), และกำหนดคอลเลกชันให้กับคุณสมบัติ role.
BibliographyStyle ไม่ตรงกับรูปแบบการอ้างอิงที่ฉันคาดหวัง Bibliography.BibliographyStyle บันทึกชื่อสไตล์การอ้างอิงที่ต้องใช้ – ทำให้สอดคล้องกับวิธีที่เอกสาร FieldCitation ฟิลด์คาดหวังการจัดรูปแบบผลลัพธ์ของพวกมัน.
คำถามที่พบบ่อย
ฉันจะเพิ่มแหล่งข้อมูลหนังสือที่มีผู้เขียนคนเดียวได้อย่างไร?
สร้าง Source พร้อมกับ SourceType.Book, ตั้งค่า BookTitle, Publisher, Year, และฟิลด์ที่เกี่ยวข้อง, จากนั้นกำหนด Person ให้กับ Source.Contributors.Author.
ฉันจะเพิ่มแหล่งข้อมูลที่มีผู้เขียนหลายคนได้อย่างไร?
กำหนด PersonCollection – ที่ถูกเติมข้อมูลด้วยอินสแตนซ์ Person ผ่าน Add() – ไปยังคุณสมบัติ role ContributorCollection ที่เกี่ยวข้อง, เช่น Author.
ฉันจะอ้างอิงองค์กรแทนบุคคลได้อย่างไร?
กำหนดอินสแตนซ์ Corporate ที่สร้างด้วย Name ขององค์กร ไปยังคุณสมบัติ role ContributorCollection แทน Person หรือ PersonCollection.
บันทึก Source ปรากฏที่ไหนในเอกสารที่แสดงผล?
พวกมันไม่ได้แสดงผลด้วยตนเอง – FieldCitation and FieldBibliography ฟิลด์แสดงเนื้อหาที่สร้างจากพวกมัน, โดยจับคู่กับ SourceTag. ดู คู่มือการเชื่อมโยงและอ้างอิง.
อะไรบ่งชี้บันทึก Source ให้กับฟิลด์ที่อ้างอิงมัน?
Source.Tag ที่ตั้งค่าในตัวสร้าง Source(tag, sourceType) – FieldCitation.SourceTag และ FieldBibliography.SourceTag จะจับคู่กับค่าที่แม่นยำนี้.