EdiFabric is a software development kit for .NET Framework and .NET Core, which makes it straightforward to parse, generate, validate, acknowledge, split, customize, or in other words, to programmatically manipulate EDI files. It is written in C# and is distributed as a DLL file and a NuGet package.
It currently supports all message types for the X12, EDIFACT, HL7, and NCPDP EDI standards, the German automotive standard VDA, as well as custom formatted flat files (delimited, positional, or a mixture of both).
NOTE: EdiFabric does not provide any communication components (AS2 or SFTP, for example), has no dashboard or UI, and is not a full end-to-end EDI solution. The best option to get the gist of what EdiFabric is, and can do, is to play around with the trial and examples.
The examples are organized into different projects in two logical categories: by product feature and by message type.
var hl7Stream = File.OpenRead(Directory.GetCurrentDirectory() + @"\..\..\..\Files\PharmacyTreatmentDispenses_RDSO13.txt");
List<IEdiItem> hl7Items;
using (var hl7Reader = new Hl7Reader(hl7Stream, "EdiFabric.Templates.Hl7"))
hl7Items = hl7Reader.ReadToEnd().ToList();
var transactions = hl7Items.OfType<TSRDSO13>();
- Visual Studio, compatible with the supported .NET versions. Download Visual Studio.
- Minimum .NET Framework 4.8 or .NET 6. Downgrading to .NET Framework 4.5 is possible by changing the target framework for each project.
All projects reference EdiFabric EDI Tools as NuGet packages from nuget.org. If you wish to install EdiFabric EDI Tools as DLLs, download the trial DLLs from here.
Rebuild the solution with Package Restore enabled. If there are any build errors, manually install the missing packages from here.
To get started, set project EdiFabric.Examples.Hl7.Demo as the startup project, open Program.cs and follow the instructions there. This project allows you to quickly translate your own EDI files.
Explore the different features of EdiFabric, such as translating from HL7 file (ReadHL7), generating HL7 file (WriteHL7), validating HL7 transactions (ValidateHL7), import/export from/to JSON , XML, CSV.
All templates in EdiFabric.Templates.HL7 can be used for validation.
EdiFabric supports all HL7 versions and message types. We have an extensive library of EDI templates, however, if you can't find a particular transaction, please let us know.
The following templates are available out-of-the-box:
For an interactive view of all templates go to EdiNation (no registration is required):
EdiNation
The trial serial key is valid for 14 days, and using the product with a trial license is subject to EdiFabric's license terms available at https://www.edifabric.com/files/eula.pdf. Upon expiry, the product will begin throwing exceptions. To continue using the trial and the examples, you'll need to request a trial extension.
The source code in these example projects is strictly for demonstrational purposes and is provided "AS IS" without warranty of any kind, whether expressed or implied, including but not limited to the implied warranties of merchantability and/or fitness for a particular purpose.
Last updated on June 20, 2023