0

我需要一些帮助来从 FHIR Observation DSTU2 资源中获取结果的值和单位。我想将这些值映射到字符串,但看起来 Observation.value[x] 可以有不同类型的数据。关于如何在 C# 中执行此操作的任何想法?我尝试了几种方法,但到目前为止没有运气,因为我使用的沙箱包含字符串、数量和 CodeableConcept 形式的结果。

http://hl7.org/fhir/observation-definitions.html#Observation.value_x _

4

1 回答 1

1

对于 Observation.value 字段,您确实可以选择类型,因此 FHIR 资源中的数据可以包含为该字段列出的任何选项。

如果您使用 Hl7.Fhir.Dstu2 库(可通过 NuGet 获得的官方 C# 参考实现),您可以使用它轻松地从沙箱中检索资源并将它们放入 POCO。这是一个例子:

using Hl7.Fhir.Model;
using Hl7.Fhir.Rest;
var client = new FhirClient("<your sandbox url>");
var obs = client.Read<Observation>("Observation/<technical id>");
// now you can access obs.Value regardless of the type in it

如果需要将数据序列化为 xml 或 json,则使用序列化程序:

using Hl7.Fhir.Serialization;
var serializer = new FhirJsonSerializer();
Console.WriteLine(serializer.SerializeToString(obs));
于 2020-12-04T09:34:45.583 回答