转帖|使用教程|编辑:杨鹏连|2021-01-29 14:08:50.073|阅读 213 次
概述:本文主要介绍LEAD医学存储服务器如何教程数据库创建一个存储目录。
# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>
相关链接:
LEADTOOLS Recognition Imaging SDK是精选的LEADTOOLS SDK功能集,旨在在企业级文档自动化解决方案中构建端到端文档成像应用程序,这些解决方案需要OCR,MICR,OMR,条形码,表单识别和处理,PDF,打印捕获 ,档案,注释和图像查看功能。 这套功能强大的工具利用LEAD屡获殊荣的图像处理技术,智能识别可用于识别和提取任何类型的扫描或传真形式图像数据的文档功能。
概述
目录存储在Leadtools.Medical.Storage.DataAccessLayer.dll程序集中定义。该目录定义了Leadtools.Medical.Storage.DataAccessLayer类和数据库模式之间的映射,并包含数据库模式中所有表名称的定义以及每个表的所有列。所有存储目录被定义为一个xml文件。下面的教程将为教程数据库创建一个存储目录。
在此之前,请先确认,您已经为数据库中的每个表定义从CatalogEntity类派生的类。例如,在本教程中,我们定义了四个类(每个表一个)。存储目录链接到以下四个类:
<CatalogDataSet>
<Entity>...</Entity>
<Entity>...</Entity>
...
<Element>...</Element>
<Element>...</Element>
...
</CatalogDataSet>
您必须为数据库定义存储目录。对于教程中的数据库结构,有四个表。下面这些是每个表的元素:<Entity>
<EntityKey>PatientTableEntityKey</EntityKey>
<EntityName>MyPatientTable</EntityName>
<DisplayName>MyPatientTable</DisplayName>
</Entity>
<Entity>
<EntityKey>StudyTableEntityKey</EntityKey>
<EntityName>MyStudyTable</EntityName>
<DisplayName>MyStudyTable</DisplayName>
</Entity>
<Entity>
<EntityKey>SeriesTableEntityKey</EntityKey>
<EntityName>MySeriesTable</EntityName>
<DisplayName>MySeriesTable</DisplayName>
</Entity>
<Entity>
<EntityKey>InstanceTableEntityKey</EntityKey>
<EntityName>MyInstanceTable</EntityName>
<DisplayName>MyInstanceTable</DisplayName>
</Entity>
每个元素的描述如下:

对于本教程来说,四个表中每个表的主键都是自动生成的主键。这些是唯一没有相应的元素的列。
例如,MyPatientTable有七列,所以目录中将有六个元素(因为MyPatientTable.PatientId不是直接查询-因此没有定义元素)。
<Element>
<EntityKey>PatientTableEntityKey</EntityKey>
<ElementKey>PatientIdentification</ElementKey>
<ElementName>PatientIdentification</ElementName>
<DisplayName>Patient ID</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>PatientTableEntityKey</EntityKey>
<ElementKey>PatientName</ElementKey>
<ElementName>PatientName</ElementName>
<DisplayName>Family Name</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>PatientTableEntityKey</EntityKey>
<ElementKey>PatientBirthday</ElementKey>
<ElementName>PatientBirthday</ElementName>
<DisplayName>Birth Date</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>PatientTableEntityKey</EntityKey>
<ElementKey>PatientSex</ElementKey>
<ElementName>PatientSex</ElementName>
<DisplayName>Sex</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>PatientTableEntityKey</EntityKey>
<ElementKey>PatientComments</ElementKey>
<ElementName>PatientComments</ElementName>
<DisplayName>Comments</DisplayName>
<KeyElement>false</KeyElement>
</Element>
每个元素的描述如下:
存储目录的完整路径在两个配置文件中指定:
<configSections>
<section name="xmlStorageCatalogSettings" type="Leadtools.Medical.Storage.DataAccessLayer.XmlStorageCatalogSettings, Leadtools.Medical.Storage.DataAccessLayer" />
</configSections>
<xmlStorageCatalogSettings catalogPath="C:\LEADTOOLS 20\Bin\Dotnet4\Win32\MyCatalog.xml"/>
最终,MyCatalog.xml的内容如下:<CatalogDataSet>
<Entity>
<!--A name that uniquely identifies the patient table-->
<EntityKey>PatientTableEntityKey</EntityKey>
<!--Name of database table that holds the patient information-->
<EntityName>MyPatientTable</EntityName>
<!-- Not used-->
<DisplayName>MyPatientTable</DisplayName>
</Entity>
<Entity>
<EntityKey>StudyTableEntityKey</EntityKey>
<EntityName>MyStudyTable</EntityName>
<DisplayName>MyStudyTable</DisplayName>
</Entity>
<Entity>
<EntityKey>SeriesTableEntityKey</EntityKey>
<EntityName>MySeriesTable</EntityName>
<DisplayName>MySeriesTable</DisplayName>
</Entity>
<Entity>
<EntityKey>InstanceTableEntityKey</EntityKey>
<EntityName>MyInstanceTable</EntityName>
<DisplayName>MyInstanceTable</DisplayName>
</Entity>
<Element>
<!-- Table name to which the element belongs -->
<EntityKey>PatientTableEntityKey</EntityKey>
<!-- The MyPatient class properties are decorated with an [EntityElementAttribute] attribute. This must be identical to one of these properties. -->
<ElementKey>PatientIdentification</ElementKey>
<!-- Must be a column name of the corresponding table -->
<ElementName>PatientIdentification</ElementName>
<!-- Not used -->
<DisplayName>Patient ID</DisplayName>
<!-- True if a primary key; false otherwise -->
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>PatientTableEntityKey</EntityKey>
<ElementKey>PatientName</ElementKey>
<ElementName>PatientName</ElementName>
<DisplayName>Family Name</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>PatientTableEntityKey</EntityKey>
<ElementKey>PatientBirthday</ElementKey>
<ElementName>PatientBirthday</ElementName>
<DisplayName>Birth Date</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>PatientTableEntityKey</EntityKey>
<ElementKey>PatientSex</ElementKey>
<ElementName>PatientSex</ElementName>
<DisplayName>Sex</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>PatientTableEntityKey</EntityKey>
<ElementKey>PatientComments</ElementKey>
<ElementName>PatientComments</ElementName>
<DisplayName>Comments</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>SeriesTableEntityKey</EntityKey>
<ElementKey>SeriesSeriesInstanceUID</ElementKey>
<ElementName>SeriesSeriesInstanceUID</ElementName>
<DisplayName>Series Instance UID</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>SeriesTableEntityKey</EntityKey>
<ElementKey>SeriesModality</ElementKey>
<ElementName>SeriesModality</ElementName>
<DisplayName>Modality</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>SeriesTableEntityKey</EntityKey>
<ElementKey>SeriesSeriesNumber</ElementKey>
<ElementName>SeriesSeriesNumber</ElementName>
<DisplayName>Series Number</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>SeriesTableEntityKey</EntityKey>
<ElementKey>SeriesSeriesDate</ElementKey>
<ElementName>SeriesSeriesDate</ElementName>
<DisplayName>Series Date</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>SeriesTableEntityKey</EntityKey>
<ElementKey>SeriesSeriesDescription</ElementKey>
<ElementName>SeriesSeriesDescription</ElementName>
<DisplayName>Series Description</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>SeriesTableEntityKey</EntityKey>
<ElementKey>SeriesBodyPartExamined</ElementKey>
<ElementName>SeriesBodyPartExamined</ElementName>
<DisplayName>Body Part Examined</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>StudyTableEntityKey</EntityKey>
<ElementKey>StudyStudyInstanceUID</ElementKey>
<ElementName>StudyStudyInstanceUID</ElementName>
<DisplayName>Study Instance UID</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>StudyTableEntityKey</EntityKey>
<ElementKey>StudyStudyDate</ElementKey>
<ElementName>StudyStudyDate</ElementName>
<DisplayName>Study Date</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>StudyTableEntityKey</EntityKey>
<ElementKey>StudyAccessionNumber</ElementKey>
<ElementName>StudyAccessionNumber</ElementName>
<DisplayName>Accession Number</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>StudyTableEntityKey</EntityKey>
<ElementKey>StudyStudyId</ElementKey>
<ElementName>StudyStudyId</ElementName>
<DisplayName>Study ID</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>StudyTableEntityKey</EntityKey>
<ElementKey>StudyReferringPhysiciansName</ElementKey>
<ElementName>StudyReferringPhysiciansName</ElementName>
<DisplayName>Referring Physician</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>StudyTableEntityKey</EntityKey>
<ElementKey>StudyStudyDescription</ElementKey>
<ElementName>StudyStudyDescription</ElementName>
<DisplayName>Study Description</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>InstanceTableEntityKey</EntityKey>
<ElementKey>SOPInstanceUID</ElementKey>
<ElementName>SOPInstanceUID</ElementName>
<DisplayName>SOP Instance UID</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>InstanceTableEntityKey</EntityKey>
<ElementKey>ImageImageNumber</ElementKey>
<ElementName>ImageImageNumber</ElementName>
<DisplayName>Instance Number</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>InstanceTableEntityKey</EntityKey>
<ElementKey>ImageLastStoreDate</ElementKey>
<ElementName>ImageLastStoreDate</ElementName>
<DisplayName>Receive Date</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>InstanceTableEntityKey</EntityKey>
<ElementKey>ImageFilename</ElementKey>
<ElementName>ImageFilename</ElementName>
<DisplayName>Referenced File</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>InstanceTableEntityKey</EntityKey>
<ElementKey>ImageUniqueSOPClassUID</ElementKey>
<ElementName>ImageUniqueSOPClassUID</ElementName>
<DisplayName>SOP Class UID</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>InstanceTableEntityKey</EntityKey>
<ElementKey>ImageRows</ElementKey>
<ElementName>ImageRows</ElementName>
<DisplayName>Rows</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>InstanceTableEntityKey</EntityKey>
<ElementKey>ImageColumns</ElementKey>
<ElementName>ImageColumns</ElementName>
<DisplayName>Cols</DisplayName>
<KeyElement>false</KeyElement>
</Element>
<Element>
<EntityKey>InstanceTableEntityKey</EntityKey>
<ElementKey>ImageBitsAllocated</ElementKey>
<ElementName>ImageBitsAllocated</ElementName>
<DisplayName>Bits Allocated</DisplayName>
<KeyElement>false</KeyElement>
</Element>
了解更多
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@ke049m.cn