【问题标题】:Using Microsoft Common data services SDK in asp.net web api在 asp.net web api 中使用 Microsoft 通用数据服务 SDK
【发布时间】:2017-07-26 05:17:42
【问题描述】:

我正在努力在 ASP.Net Web API 中使用 Microsoft Common Data Services SDK 方法。当我创建与公共数据服务的连接时,它会提示使用 azure id 登录,但登录后它不会返回对 Web API 的响应以继续进行。

当我在控制台应用程序中使用 SDK 方法时,这工作正常,我可以从控制台应用程序对 CDS 数据库执行 CRUD 操作。

请建议如何在 ASP.Net Web API 中使用 SDK 方法?我想避免登录提示,因为我的应用程序是一个 Web API 服务,它将在后台运行并且不会有用户交互。有没有办法在配置文件或代码中定义登录凭据以避免登录提示?

谢谢

【问题讨论】:

  • 嗨拉胡尔,你有没有找到解决方案?缺少文档

标签: powerapps


【解决方案1】:

我知道我来晚了,但我想我会为遇到同样问题的其他人回答。

如果您遵循 Microsoft Docs 中编写的当前说明,您最终会得到一个 App.config 文件,其中包含允许您与 CDS 环境交互所需的所有必要值。问题是,如果您包含通常会提示您输入的用户凭据并将UserSource 值更改为LoggedIn,仍然会提示您登录。将值存储在 App.config 文件中也不会使其成为 ASP.NET 项目的理想选择。

因此,您可以自己创建ConnectionSettings 类的实例并提供所有必要的凭据。

var settings = new ConnectionSettings
{
    Credentials = new UserCredentialsSettings
    {
        UserName = _userName,
        Password = _password,
        ApplicationId = _applicationId
    },
    EnvironmendId = _environmentId,
    Tenant = _tenant
};

using (var client = settings.CreateClient().Result)
{
    // Write calls to the CDS here
}

使用这种方法可以防止您收到登录提示。它还允许您使用 ConfigurationManager.AppSettings 存储和访问您的凭据,从而可以轻松地将您的凭据保存在源代码之外。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-30
    • 2016-03-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多