Объектная модель HL7 для.NET
Поиск библиотеки или инфраструктуры, которая предоставила бы объектную модель, анализ, проверку и т. Д.
Идея состоит в том, чтобы иметь возможность раскрутить новый объект типа hl7 v2 или v3. Тогда, возможно, назовите это типом сообщения ORU_R01 или ADT, или ORM.
Не было бы жизни здорово, если бы мы могли сделать что-то вроде этого:
HL7V2 myMessage = new HL7V2();
myMessage.Type = V2MsgTypes.ORU_R01;
myMessage.TryParse(someHL7_string);
if (myMessage.IsValid)
{
//do some work
//maybe access the PID segment
if (myMessage.Patient.Names.FamilyName =="Johnson")
{
//do more work
}
}
6 ответов
Вы хотите nHAPI Я использовал его в проекте ранее, и он работал отлично. Тот факт, что это открытый исходный код также спас мой бекон, так как один из источников входных данных не совсем точно соответствовал спецификации HL7, поэтому мне пришлось немного взломать источник, чтобы парсер nHAPI разрешил эти сообщения (так как я не мог поменять их).
Я тоже использовал nHAPI, и он прекрасно работает. Однако вам, возможно, придется остерегаться некоторых странных действий, не связанных со специальными символами. Мне также пришлось вручную взломать строку HL7, чтобы обновить некоторые поля, которые были недоступны при использовании объектной модели.
Вместо того чтобы использовать API, попробуйте Mirth Connect, инструмент с открытым исходным кодом, который вы можете установить на свой сервер и интегрировать с.NET, базами данных, каталогами файлов и т. Д.
У Криса Паттерсона есть библиотека для манипулирования HL7 2.x под названием Machete, которая довольно хороша. https://github.com/phatboyg/Machete
NHapi в порядке, но страдает от плохой работы в моем опыте.
У Orion Helth есть набор инструментов под названием Symphonia, который делает нечто подобное. Существует также набор инструментов Chameleon от Interfaceware, который делает то же самое.
Я только что наткнулся на этот продукт:
Объекты управляемого кода для Visual Studio .Net
С их веб-страницы:
DLL-библиотека Visual Studio .Net HL7 Class Library, разработанная, чтобы позволить разработчикам программного обеспечения HL7 обеспечить интеграцию HL7 для своих существующих решений дешево, быстро и надежно.