在Microsoft Graph小记之身份验证一文中,笔者介绍了在利用Microsoft Graph进行开发时,如何解决身份验证及授权的问题。本文将接着介绍,如何利用前文中实现的IAuthenticationProvider接口类完成业务逻辑需求开发。
1. Graph客户端初始化
为了能够调用实际的Graph SDK Methods/API来实现所需的业务逻辑,用户首先需要利用自定义的IAuthenticationProvider接口实现类初始化一个GraphServiceClient实例。
public class GraphClient
{
private readonly GraphServiceClient _client;
public GraphClient(IAuthenticationProvider authProvider)
{
if (authProvider == null)
throw new ArgumentNullException(name(authProvider));
_client = new GraphServiceClient(authProvider);
}
}
在实际生产环境中,用户可能需要通过代理服务器来访问Graph服务,此时用户还需要向GraphServiceClient构造函数中传入一个HttpProvider实例,来指定代理服务器的相关信息。
public class GraphClient
{
private readonly GraphServiceClient _client;
public GraphClient(