0

似乎我无法自己解决这个问题。我正在尝试注册用户以进行离线 Healthvault 访问,但找不到不到四年的好例子。HV 发生了变化,MVC 也发生了变化。

据我了解,您基本上需要四件事来访问 Healthvault 上的用户信息。应用程序证书、与该证书关联的应用程序 ID、personId 和 recordId。(最后两个在不同的情况下得到不同的名字并没有帮助。)

在 HV 将用户送回后,我在处理重定向时遇到问题。我似乎无法控制它的去向或如何获取 personId 和 recordId。

为了帮助我了解正在发生的事情,我想做的是构建一个非常基本的 MVC 应用程序,其中用户单击一个按钮,他们被带到 Healthvault,在那里进行身份验证,授权我的应用程序,他们返回应用程序,我得到他们的 personId和记录ID。我不想让他们像我发现的大多数示例一样使用 HV 对我的应用程序进行身份验证。

非常感谢这方面的任何帮助。

4

1 回答 1

0

好吧,经过几天的工作试图了解情况并最终在 StackOverflow 上写了一个问题,我自己在几个小时内就弄清楚了。有些日子有顿悟,有些日子只是嗯。

我希望稍后对此进行扩展,但简短的回答是我将 Microsoft.Health.Web.MVC 属性 [RequireSignIn] 放在我正在调用的控制器上。这样做了,并把我带到了我登录的 Healthvault。现在,为了避免被重定向回同一个控制器并最终陷入无限循环,我不得不进入网络配置并更改应用程序将 NonProductionActionUrlRedirectOverride 设置为我想要结束的控制器和操作。

控制器中的操作如下所示:

// GET: Healthvault
[HttpGet]
[RequireSignIn]
public ActionResult RegisterUser()

Web 配置中的条目如下所示:

<add key="NonProductionActionUrlRedirectOverride" value="Healthvault/Index"/>

一旦我回到 Healthvault 控制器的 Index 操作,我将不得不从 URI 中提取 recordId,以便我可以保存这些值以供以后访问患者记录。

于 2017-05-03T21:57:16.640 回答