You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Hl7.Fhir.R4创建valueReference扩展的技术咨询

解决Hl7.Fhir.R4对接NHS ERS API时自定义扩展的构建问题

由于这个是NHS定义的STU3自定义扩展,Hl7.Fhir.R4的官方NuGet包不会提供对应的预生成模型类,你可以通过以下两种方式手动构建所需的扩展结构:

方式一:直接使用基础Extension类构建

利用R4库中自带的Extension类手动创建符合要求的扩展实例,这是最直接的方案:

// 初始化扩展对象
var searchCriteriaExt = new Extension
{
    Url = "https://fhir.nhs.uk/STU3/StructureDefinition/Extension-eRS-Shortlist-SearchCriteria-1",
    Value = new ResourceReference("#ServiceSearchCriteria-1")
};

// 将扩展添加到你的转诊资源中(假设referral是你要提交的CreateReferral对应的资源实例)
referral.Extension.Add(searchCriteriaExt);

方式二:自定义复用类(适合多次使用场景)

如果这个扩展需要在代码中多次使用,可以封装一个自定义类继承自Extension,简化重复代码:

public class ErsShortlistSearchCriteriaExtension : Extension
{
    public ErsShortlistSearchCriteriaExtension(string resourceReference)
    {
        Url = "https://fhir.nhs.uk/STU3/StructureDefinition/Extension-eRS-Shortlist-SearchCriteria-1";
        Value = new ResourceReference(resourceReference);
    }
}

// 使用示例
var customExt = new ErsShortlistSearchCriteriaExtension("#ServiceSearchCriteria-1");
referral.Extension.Add(customExt);

关键注意点

  • 尽管该扩展的定义基于STU3,但R4的Extension类核心结构与STU3兼容,序列化后完全符合API要求的JSON格式。
  • 确保#ServiceSearchCriteria-1对应的资源已包含在同一个请求Bundle或转诊资源的嵌套结构中,否则API会返回引用无效的错误。

内容的提问来源于stack exchange,提问作者Steve Borman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 08:30:47