Бид Microsoft Word баримт бичгийг боловсруулах 12 .NET номын санг үнэлсэн. Үүнд үнэгүй Open XML SDK болон NPOI, IronWord, GemBox.Document, Spire.Doc зэрэг дунд шатны худалдааны сонголтууд, мөн Aspose.Words болон Syncfusion DocIO зэрэг корпорацийн түвшний бүтээгдэхүүнүүд багтсан. .NET C# номын сан бүр бүх талаараа ялах боломжгүй. Aspose.Words нь функцээрээ тэргүүлдэг, Syncfusion DocIO нь эхлэх үнэ цэнэ (үнэгүй олон нийтийн лиценз), GemBox.Document нь гүйцэтгэлээр, IronWord нь орчин үеийн API дизайн болон Iron Suite-ийн хамтын ажиллагаагаар, Open XML SDK нь үнэ төлбөргүй байдлаараа онцлогтой. Энэхүү нийтлэл нь функц, харьцуулсан код, үнийн хүснэгт, таны төсөлд тохирох баримт бичгийн шийдлийг сонгох аргачлалыг танилцуулж байна. Товчхондоо: Хэрэв та .NET програмынхаа хувьд буруу Word API номын санг сонговол зургаан сарын дараа асуудал үүснэ. Жишээлбэл, хэрэв үйлчлүүлэгч тань "mail merge" хийхийг хүсэхэд таны номын сан үүнийг дэмжихгүй байх, эсвэл номын сан нь Microsoft Office суулгах шаардлагатай тул CI pipeline чинь ажиллахгүй болох, эсвэл "үнэгүй" гэсэн нь арилжааны бус лицензийн нөхцөлтэй байсныг анзаарахгүй байх зэрэг асуудлууд гарч болно. Бид C# ашиглан баримт бичгийг үүсгэх, Microsoft Word файлуудыг хэрэглэх 12 .NET номын санг үнэлсэн. Эдгээрийг ижил төстэй даалгаваруудаар шалгасан: үндсэн шинэ баримт бичиг үүсгэх, хэв маягтай болгох, хүснэгт үүсгэх, зураг оруулах, загвар ашиглан гаргах. Бид API-уудыг харьцуулж, хөндлөн платформ байршуулах боломжийг шалгаж, .NET 8 болон .NET 10-ийг дэмждэгийг баталгаажуулж, функцүүдийг жагсаан бичиж, төсөл дуусах шатанд байхад баг хамт олныг төөрөлдүүлдэг лицензийн эрсдлүүдийг тодорхойлсон. Энэхүү нийтлэл нь тэдгээрийн үр дүн юм. Тодруулбал: бид номын сангийн ард байдаг баг юм. Гэхдээ бид шударга үнэлгээ нь маркетингийн сурталчилгаанаас илүү хөгжүүлэгчдэд тустай гэдэгт итгэдэг. Бид өөрсдийн аргыг танилцуулж, алдаагаа хүлээн зөвшөөрч, код өөрөө ярих болно. Хэрэв өрсөлдөгч маань IronWord-оос үнэхээр илүү байвал бид үүнийг хэлнэ. IronWord Өнөөдрийн номын сангууд ямар боломжтойг харуулахын тулд, орчин үеийн C# Word номын сангаар баримт бичиг үүсгэхэд хэдхэн мөр код хэрхэн харагддагийг IronWord-оор харуулъя: using IronWord; using IronWord.Models; WordDocument doc = new WordDocument(); doc.AddText("Hello from IronWord — no Office required."); doc.SaveAs("hello.docx"); Үүсгэгдсэн DOCX файл Энэхүү харьцуулалтанд байгаа номын сан бүр ижил төстэй баримт бичгийг үүсгэх боломжтой. API дизайн, функцийн гүн, хөрвүүлэх чадвар, үнэ, платформ дэмжлэг нь таны төсөлд ямар нь тохирохыг шийдэх гол хүчин зүйлүүд юм. Энэхүү харьцуулалтын зорилго нь энэ юм. Таны DOCX номын сангийн сонголт яагаад чухал вэ Word номын сан сонгох нь урт хугацааны архитектурын шийдвэр юм. Word загварууд, хэв маягийн логик, баримт бичиг үүсгэх дамжлага зэргийг тухайн API-д тулгуурлан бүтээсний дараа нэг номын сангаас өөр рүү шилжих нь их зардалтай. Бид .NET Core дээр ажиллах боломжгүй, Docker-т байршуулах боломжгүй, эсвэл олон баримт бичгийг нэгэн зэрэг боловсруулж чадахгүй номын сангуудад гацсан багуудтай таарч байсан. Энэхүү харьцуулалтын туршид бидний ашигласан үнэлгээний шалгуур: — Нийтлэг ажлуудыг хийхэд хэдэн мөр код шаардлагатай вэ? Обьект загвар нь хэр ойлгомжтой вэ? Word баримт бичгийг хэрхэн зохицуулдаг вэ? API дизайн — Текст, , , гарчиг/дорчиг, mail merge, өөрчлөлтийг хянах, дижитал гарын үсэг, одоо байгаа Word баримт бичгийг засварлах чадвар Функцийн гүн хүснэгт зураг — Word баримт бичгийг PDF файл эсвэл бусад файлын формат руу хөрвүүлдэг үү? Форматын тогтвортой байдлыг хадгалж чадах уу? Файлын формат дэмжлэг — Багц үүсгэх тохиолдлуудад санах ойн хэрэглээ болон дамжуулалт Гүйцэтгэл — .NET хувилбарууд, үйлдлийн систем, Docker, цахим байршуулалт Платформ дэмжлэг — Үнэгүй, үнэгүй+төлбөртэй, хөгжүүлэгч тус бүр, сервер тус бүр, корпорацийн лиценз Үнэ — Кодны жишээ, API лавлах, эхлүүлэх гарын авлага Баримт бичгийн чанар — NuGet татаж авах хандлага, GitHub идэвх, хувилбар гаргалтын давтамж Олон нийт ба засвар үйлчилгээ DOCX хэрхэн ажилладаг тухай товч тэмдэглэл: DOCX файл нь XML файлуудыг агуулсан ZIP архив бөгөөд -тай нийцдэг. Энэ харьцуулалтанд байгаа номын сан бүр эдгээр XML файлуудыг өөр өөрөөр зохицуулдаг. Зарим нь танд XML-д шууд хандах боломжийг олгодог, бусад нь өндөр түвшний баримт бичгийн обьект загварыг санал болгодог. Энэ архитектурын ялгаа нь API-ийн хэрэглээ болон функцүүдийн тохирлын ихэнх хувийг бүрдүүлдэг. нь албан ёсны стандартыг тодорхойлдог, харин Microsoft-ын нь лавлах хэрэгжилт юм. Office Open XML (OOXML) стандарт ECMA-376 тодорхойлолт GitHub дээрх Open XML SDK Бүтэн жагсаалт — Түргэн лавлах хүснэгт Бид тус тусын номын сангийн талаар дэлгэрэнгүй ярихаас өмнө, энэ хүснэгтийг харцгаая. Энэ хүснэгтийг хавчуурга хийж аваарай, энэ нь таны жагсаалтыг богиносгох хамгийн хурдан арга юм. Номын сан Төрөл Лиценз .NET 8 (LTS) .NET 10 Word→PDF Mail Merge Хамгийн тохиромжтой Open XML SDK OSS MIT ✅ ✅ ❌ ❌ XML-д шууд хандах NPOI OSS Apache 2.0 ✅ ✅ ❌ ❌ Олон формат (Word + Excel) Xceed DocX OSS* Нийтийн (арилжааны бус) ✅ ✅ ❌ ❌ Цэвэр API прототип OfficeIMO OSS MIT ✅ ❓ ❌ ❌ Энгийн Word ажлууд FileFormat.Words OSS MIT ✅ ❓ ❌ ❌ Хөнгөн DOCX ажиллагаа Aspose.Words Арилжааны Хөгжүүлэгч тус бүр ✅ ✅ ✅ ✅ Хамгийн их функц Syncfusion DocIO Арилжааны Хөгжүүлэгч тус бүр (үнэгүй олон нийтийн анги) ✅ ✅ ✅ ✅ Стартапууд ба Syncfusion хэрэглэгчид Spire.Doc Арилжааны Хөгжүүлэгч тус бүр (үнэгүй хувилбар байдаг) ✅ ✅ ✅ ✅ Дунд шатны форматын хөрвүүлэлт GemBox.Document Арилжааны Хөгжүүлэгч тус бүр (үнэгүй анги: 20 бүлэг) ✅ ✅ ✅ ✅ Гүйцэтгэл шаардлагатай програмууд IronWord Арилжааны Хөгжүүлэгч тус бүр ✅ ✅ ❌ ❌ Орчин үеийн API + Iron Suite хамтын ажиллагаа Telerik WordsProcessing Арилжааны Telerik UI-тай хамт багцалсан ✅ ✅ ✅ ✅ Telerik экосистемийн багууд Document Solutions for Word Арилжааны Хөгжүүлэгч тус бүр ✅ ✅ ✅ ✅ Загвар-удирсдаг үүсгэл MS Office Interop Хуучирсан Office лиценз шаардлагатай ⚠️ ⚠️ ✅ ✅ Зөвхөн ширээний, Office байх ёстой 1-р хүснэгт: Шагналт 12 C# Word номын сангийн хурдан харьцуулалт. ✅ = дэмждэг, ❌ = дэмжихгүй, ⚠️ = хязгаарлагдмал/хуучирсан дэмжлэг, ❓ = батлагдаагүй. *Xceed DocX нь арилжааны бус зорилгоор Нийтийн лицензээр үнэгүй байдаг. Үйлдвэрлэлийн зорилгоор ашиглах нь худалдааны Xceed Words for .NET лиценз шаарддаг. Одоо бид тус бүрийг нь дэлгэрэнгүй авч үзье. Бид тэдгээрийг гурван ангилалд хуваасан: үнэгүй/нээлттэй эх сурвалж, арилжааны, болон хуучирсан (Office Interop). Үнэгүй ба Нээлттэй Эх Суурьтай Номын Сангууд Эдгээр номын сангууд нь ашиглахад үнэ төлбөргүй боловч "үнэгүй" гэдэг нь "бэрхшээлгүй" гэсэн үг биш юм. Тус бүр нь өөрийн гэсэн онцлогтой бөгөөд энэ нь түүний байр суурийг тодорхойлдог. Open XML SDK (Microsoft) нь Microsoft-ын албан ёсны, Office Open XML баримт бичгийг зохицуулах бага түвшний номын сан юм. Энэ нь танд .docx файлуудын доторх XML бүтцийг шууд мэдэгдэхүйц .NET ангиудтайгаар хандах боломжийг олгодог. Open XML SDK using DocumentFormat.OpenXml; using DocumentFormat.OpenXml.Packaging; using DocumentFormat.OpenXml.Wordprocessing; using var doc = WordprocessingDocument.Create("hello.docx", WordprocessingDocumentType.Document); var mainPart = doc.AddMainDocumentPart(); mainPart.Document = new Document( new Body( new Paragraph( new Run( new Text("Hello from Open XML SDK"))))); Open XML SDK Үр Дүн Энэ нь 8 мөр код бөгөөд хэрэглэх заалт болон энгийн текстний нэг бүлгийг үүсгэхэд ордог. Хэв маяг, хүснэгт, эсвэл зураг нэмэх нь та XML элементийг шууд бүтээж байгаа тул ихээхэн их үг хэллэг болгоно. : Төлбөргүй (MIT лиценз), гадаад хамааралгүй, асар том олон нийт, албан ёсны Microsoft дэмжлэг, Open XML тодорхойлолтыг бүрэн хамрах, Microsoft Learn дээр . NuGet дээр . v3.4.x хувилбарууд (2025 оны сүүлээр) JIT болон AOT хөрвүүлэлтийн хэмжээг бууруулсан гүйцэтгэлийн сайжруулалтыг нэмсэн. Давуу талууд маш сайн баримт бичиг 200 сая гаруй цуглуулсан татан авалттай : Баримт бичгийн загвар ойлголт байхгүй, та XML-ийг угсарч байна. Word-to-PDF хөрвүүлэлт, дүрслэлт, mail merge байхгүй. Суралцах хугацаа нь маш урт; үүнийг үр дүнтэй ашиглахын тулд Open XML тодорхойлолтыг ойлгох хэрэгтэй. Хязгаарлалтууд : Хэт бага хамааралтайгаар XML-ийг нарийвчлан хянах шаардлагатай, их үг хэллэгтэй эвлэрдэг, дүрслэлт эсвэл хөрвүүлэлтийн функц хэрэггүй багууд. Хамгийн тохиромжтой NPOI нь Apache POI-ийн .NET порц бөгөөд энэ нь Microsoft Office файлуудыг хэрэглэх Java номын сан юм. Энэ нь Word (DOCX/DOC) болон Excel (XLSX/XLS) баримт бичгийг хоёуланг нь хэрэглэдэг. Нийт гаар энэ нь .NET экосистемийн хамгийн алдартай нээлттэй эх сурвалжтай Office номын сангуудын нэг юм. NPOI 700 сая гаруй NuGet татан авалттай : Үнэгүй (Apache 2.0), нэг хамааралтайгаар Word болон Excel хоёуланг нь хэрэглэдэг, хуучин .doc форматыг дэмждэг (зөвхөн DOCX биш), хөндлөн платформ, удаан хугацааны туршлагатай боловсорсон төсөл. Давуу талууд Анхдагч NPOI Word үүсгэх байдал нь: using NPOI.XWPF.UserModel; XWPFDocument doc = new XWPFDocument(); XWPFParagraph para = doc.CreateParagraph(); XWPFRun run = para.CreateRun(); run.SetText("Hello from NPOI"); run.IsBold = true; run.FontSize = 14; using FileStream fs = new FileStream("hello.docx", FileMode.Create); doc.Write(fs); NPOI Үр Дүн Хэрэв та Java-д Apache POI ашигласан бол энэ нь танил байх болно, энэ нь давуу тал (хэл хоорондын мэдлэг дамжуулах) болон сул тал (C# кодонд Java хэлбэрүүд) аль аль нь юм. : API нь Java-г дагах хэлбэрийг агуулдаг, энэ нь C#-д гадаад мэт санагдаж болно. Баримт бичиг нь бага, ихэнх зөвлөгөө нь Java POI жишээг орчуулах явдал юм. DOCX дэмжлэг нь ашигтай боловч XLSX талтай харьцуулахад илүү боловсронгуй биш юм. Сүүлийн жилүүдэд олон нийтийн идэвхжил буурсан бөгөөд номын сангийн оргил үеийнхээс цөөн хувилбар гарсан. Хязгаарлалтууд : Ижил номын сангаас энгийн Word боломжуудыг хэрэгтэй байгаа Excel боловсруулалтын хувьд NPOI ашиглаж буй багууд, эсвэл хуучин .doc форматыг дэмжих шаардлагатай төслүүд. Хамгийн тохиромжтой Xceed DocX / Xceed Words for .NET нь GitHub дээрх хамгийн алдартай нээлттэй эх сурвалжтай Word номын сангуудын нэг бөгөөд анх Cathal Coffey бүтээж, одоо -аас хянагддаг. Үнэгүй Нийтийн Лиценз хувилбар нь ихэнх нийтлэг ажлуудыг гүйцэтгэдэг; худалдааны нь PDF экспорт, график, дижитал гарын үсэг, болон дэвшилтэт функцүүдийг нэмдэг. Xceed DocX Xceed Software Xceed Words for .NET // Xceed DocX (Нийтийн Лиценз) using Xceed.Document.NET; using Xceed.Words.NET; using var doc = DocX.Create("hello.docx"); doc.InsertParagraph("Hello from Xceed DocX") .FontSize(14) .Bold() .Color(System.Drawing.Color.DarkBlue); doc.Save(); Xceed DocX Үр Дүн Энэ нь нээлттэй эх сурвалжтай хэсэгт хамгийн шилдэг, цэвэр .NET Word API юм. : Ойлгоход хялбар урсгалтай API, идэвхтэй хөгжүүлэлт (2025 оны 9-р сард v5.0.0 гарсан), сайн баримт бичиг, график дэмжлэг, параллель баримт бичиг боловсруулалт, загвар хэрэглэх. Худалдааны шинэчлэлт нь PDF хөрвүүлэлт болон System.Drawing.Common хамааралгүйгээр .NET 9+ дэмжлэгийг нэмдэг. Давуу талууд : Нийтийн лиценз нь зөвхөн арилжааны бус төслүүдэд хэрэглэхийг хориглоно. Үйлдвэрлэлд байршуулах тэр мөлөө та худалдааны Xceed Words for .NET лиценз худалдаж авах шаардлагатай болно. Зарим хөгжүүлэгчид үүнийг хөгжүүлэлтийн сүүл үе хүртэл ойлгодоггүй. Хязгаарлалтууд : Цэвэр API-тай прототип болон арилжааны бус төслүүд. Үйлдвэрлэлийн зорилгоор худалдааны лицензийг худалдаж авахад бэлэн байгаа багууд нь хамгийн хэрэглэхэд хялбар DOCX API-уудын нэгийг авна. Хамгийн тохиромжтой OfficeIMO нь Przemyslaw Klys ( ) бүтээсэн Open XML SDK дээр суурилсан энгийн нэмэлт юм. Энэ нь ердийн Word үйлдлүүдийг шууд Open XML-ээс илүү энгийн болгох зорилготой. OfficeIMO Evotec : Үнэгүй (MIT), Open XML SDK-аас шууд ашиглахаас хамаагүй энгийн, бага кодтойгоор гарчиг/дорчиг/хэсгүүдийг зохицуулдаг, энгийн ажлуудад тохиромжтой. Давуу талууд : Хязгаарлагдмал функц, зөвхөн үндсэн хэв маяг болон баримт бичгийн бүтэц. PDF хөрвүүлэлт, дэвшилтэт хэв маяг, mail merge байхгүй. Төсөл нь зарим хувилбаруудаас бага хувилбар гаргадаг. Бичигдсэн үед .NET 10 дэмжлэг нь батлагдаагүй байна. Хязгаарлалтууд : Төлөвлөгөөгүй эсвэл нарийн төвөгтэй шаардлагагүйгээр энгийн Word баримт бичгийг үүсгэх шаардлагатай жижиг хэрэглээний програм эсвэл дотоод хэрэгсэл. Хамгийн тохиромжтой FileFormat.Words нь дээр суурилсан нээлттэй эх сурвалжтай номын сан бөгөөд баримт бичиг үүсгэх болон хөрвүүлэхэд өндөр түвшний API-г санал болгодог. FileFormat.Words OpenXML SDK : Үнэгүй (MIT), сайн туршсан OpenXML SDK-ын суурь дээр бүтээгдсэн, баримт бичгийг хөрвүүлэх (Word-to-PDF, HTML, болон зураг, Word шаардахгүйгээр) дэмждэг, хөнгөн. Давуу талууд : Open XML SDK эсвэл Xceed DocX-тай харьцуулахад бага олон нийт. Д дэвшилтэт хэв маягийн сонголтууд нь хязгаарлагдмал. Нууц үгээр хамгаалагдсан баримт бичгийг зохицуулах нь тогтворгүй байдлын талаар мэдээлэгдсэн. Баримт бичиг нь одоо ч өсч байна. Хязгаарлалтууд : Нээлттэй эх сурвалжийн шийдлийг илүүд үздэг, хөрвүүлэлтийн боломжтой энгийн DOCX зохицуулалт хэрэгтэй жижиг төслүүд. Хамгийн тохиромжтой Арилжааны Номын Сангууд Арилжааны номын сангууд нь лицензийн зардлыг функц, дэмжлэг, хөгжүүлэлтийн хурдтай сольдог. Эндхийн үнэ нь үнэгүй нийтийн ангиас эхлээд хэдэн мянган долларын үнэтэй корпорацийн лиценз хүртэл өргөн хүрээтэй. Aspose.Words for .NET