本文整理汇总了C#中StudyXml.First方法的典型用法代码示例。如果您正苦于以下问题:C# StudyXml.First方法的具体用法?C# StudyXml.First怎么用?C# StudyXml.First使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类StudyXml
的用法示例。
在下文中一共展示了StudyXml.First方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetInstanceXml
private InstanceXml GetInstanceXml(StudyXmlOutputSettings outputSettings, out DicomFile real)
{
var xml = new StudyXml();
real = new DicomFile();
SetupMR(real.DataSet);
real.MediaStorageSopClassUid = real.DataSet[DicomTags.SopClassUid].ToString();
real.MetaInfo[DicomTags.SopClassUid].SetString(0, real.DataSet[DicomTags.SopClassUid].ToString());
var bytes = new Byte[2048];
real.DataSet[DicomTags.RedPaletteColorLookupTableData].Values = bytes;
var privateTag = new DicomTag(0x00111301, "Private Tag", "PrivateTag", DicomVr.CSvr, false, 1, 1, false);
real.DataSet[privateTag].SetString(0, "Private");
var sequences = (DicomSequenceItem[])real.DataSet[DicomTags.RequestAttributesSequence].Values;
var firstItem = sequences.First();
firstItem[DicomTags.RedPaletteColorLookupTableData].Values = bytes;
var attr = real.DataSet[DicomTags.ReferencedStudySequence];
var sequenceItem = new DicomSequenceItem();
attr.AddSequenceItem(sequenceItem);
sequenceItem[privateTag].SetString(0, "Private");
xml.AddFile(real);
var memento = xml.GetMemento(outputSettings ?? new StudyXmlOutputSettings
{
IncludeLargeTags = StudyXmlTagInclusion.IncludeTagExclusion,
IncludePrivateValues = StudyXmlTagInclusion.IgnoreTag,
MaxTagLength = 1024
});
xml = new StudyXml();
xml.SetMemento(memento);
return xml.First().First();
}
示例2: Update
public void Update(StudyXml studyXml)
{
Platform.CheckForNullReference(studyXml, "studyXml");
var dataSet = studyXml.First().First().Collection;
DicomAttribute attribute = dataSet[DicomTags.StudyInstanceUid];
string datasetStudyUid = attribute.ToString();
if (!String.IsNullOrEmpty(StudyInstanceUid) && StudyInstanceUid != datasetStudyUid)
{
string message = String.Format("The study uid in the data set does not match this study's uid ({0} != {1}).",
datasetStudyUid, StudyInstanceUid);
throw new InvalidOperationException(message);
}
StudyInstanceUid = attribute.ToString();
Platform.CheckForEmptyString(StudyInstanceUid, "StudyInstanceUid");
_studyXml = studyXml;
attribute = dataSet[DicomTags.PatientId];
PatientId = attribute.ToString();
attribute = dataSet[DicomTags.PatientsName];
PatientsName = new PersonName(attribute.ToString());
attribute = dataSet[DicomTags.ReferringPhysiciansName];
ReferringPhysiciansName = new PersonName(attribute.ToString());
attribute = dataSet[DicomTags.PatientsSex];
PatientsSex = attribute.ToString();
attribute = dataSet[DicomTags.PatientsBirthDate];
PatientsBirthDateRaw = attribute.ToString();
PatientsBirthDate = DateParser.Parse(PatientsBirthDateRaw);
attribute = dataSet[DicomTags.PatientsBirthTime];
PatientsBirthTimeRaw = attribute.ToString();
var time = TimeParser.Parse(PatientsBirthTimeRaw);
if (time.HasValue)
PatientsBirthTimeTicks = time.Value.TimeOfDay.Ticks;
else
PatientsBirthTimeTicks = null;
attribute = dataSet[DicomTags.StudyId];
StudyId = attribute.ToString();
attribute = dataSet[DicomTags.AccessionNumber];
AccessionNumber = attribute.ToString();
attribute = dataSet[DicomTags.StudyDescription];
StudyDescription = attribute.ToString();
attribute = dataSet[DicomTags.StudyDate];
StudyDateRaw = attribute.ToString();
StudyDate = DateParser.Parse(StudyDateRaw);
attribute = dataSet[DicomTags.StudyTime];
StudyTimeRaw = attribute.ToString();
time = TimeParser.Parse(StudyTimeRaw);
if (time.HasValue)
StudyTimeTicks = time.Value.TimeOfDay.Ticks;
else
StudyTimeTicks = null;
if (dataSet.Contains(DicomTags.ProcedureCodeSequence))
{
attribute = dataSet[DicomTags.ProcedureCodeSequence];
if (!attribute.IsEmpty && !attribute.IsNull)
{
DicomSequenceItem sequence = ((DicomSequenceItem[])attribute.Values)[0];
ProcedureCodeSequenceCodeValue = sequence[DicomTags.CodeValue].ToString();
ProcedureCodeSequenceCodingSchemeDesignator = sequence[DicomTags.CodingSchemeDesignator].ToString();
}
}
attribute = dataSet[DicomTags.PatientSpeciesDescription];
PatientSpeciesDescription = attribute.ToString();
if (dataSet.Contains(DicomTags.PatientSpeciesCodeSequence))
{
attribute = dataSet[DicomTags.PatientSpeciesCodeSequence];
if (!attribute.IsEmpty && !attribute.IsNull)
{
DicomSequenceItem sequence = ((DicomSequenceItem[])attribute.Values)[0];
PatientSpeciesCodeSequenceCodingSchemeDesignator = sequence[DicomTags.CodingSchemeDesignator].ToString();
PatientSpeciesCodeSequenceCodeValue = sequence[DicomTags.CodeValue].ToString();
PatientSpeciesCodeSequenceCodeMeaning = sequence[DicomTags.CodeMeaning].ToString();
}
}
attribute = dataSet[DicomTags.PatientBreedDescription];
PatientBreedDescription = attribute.ToString();
if (dataSet.Contains(DicomTags.PatientBreedCodeSequence))
{
attribute = dataSet[DicomTags.PatientBreedCodeSequence];
if (!attribute.IsEmpty && !attribute.IsNull)
//.........这里部分代码省略.........