如何在我的 Web 应用程序中包含 Office 365 服务

How to include Office 365 services in my web app

我对 Microsoft 的开发中心门户感到非常困惑,并且一直在循环。我正在尝试为我的企业构建一个 Web 应用程序,允许员工登录到他们的 Office 365 帐户并在他们的邮件和日历服务中同步、读取、写入和创建事件。我可以使用的工具是 Visual Studio 2012、2013、2015 和 .NET Framework。我已经启动了一个 .NET 网站项目,此时作为 MVC 重新启动会花费太多时间和人力,但作为绝对的最后手段,我们会这样做。

我已经注册了 Azure(最不友好的仪表板!)、Office 365 开发人员帐户、付费 Office 365 帐户的试用订阅。我已经在应用程序注册门户 (https://apps.dev.microsoft.com) and the Outlook Dev Portal App Registration Tool (https://dev.outlook.com/AppRegistration) 中注册了我的应用程序。我从 Outlook 开发门户应用程序注册工具获得了更多成功(实际上我从服务器返回了一些提示,表明已发送令牌)。

在这个 Whosebug 问题中可以看到我的一些努力 我的团队最终在本教程的存储库中下载了代码 (dotnet-tutorial.sln),但我们甚至无法获得它在本地工作。当我们尝试恢复 NuGet 程序包时,加载栏会一直坐着,坐着几个小时,并且由于 30 个解析器错误,代码不会 运行 在浏览器中。

好的,那么我如何(通过简单有效的步骤)将邮件和日历添加到我的应用程序中?

实际上,this document has provided detail explanation and steps for how to get O365 mail with a MVC web application . You are more likely want to know how to make this code sample 可以让您更好地学习 code/api。我将与您分享我如何在我的环境中使用该示例:

  1. 前往 https://apps.dev.microsoft.com 快速获取客户端 ID 和密码。使用登录按钮,使用您的 Microsoft 帐户 (Outlook.com) 或您的工作或学校帐户 (Office 365) 登录。您可以在 "Implementing OAuth2" 部分找到详细步骤42=].
  2. 下载教程存储库中的代码或直接从 Visual Studio 连接到 GitHub 中的解决方案。
  3. 打开 microsoft visual studio 2015,打开项目(select .sln 文件)。
  4. 加载项目时,如果按 F5,将出现无法找到 "Microsoft.Office365.OutlookServices" 的解析器错误。然后在项目的 nuget 包管理器中,更新 "Microsoft.Office365.OutlookServices" dll 到最新版本。重建项目。
  5. 打开web.config文件,在元素中添加以下键:<add key="ida:ClientID" value="YOUR APP ID" /><add key="ida:ClientSecret" value="YOUR APP PASSWORD" />
  6. 按F5调试应用,输入你的o365账号,授予权限:
  7. 您将成功收到邮件消息。

您可以从 here 中找到更多 Office 365 API 代码示例和视频。

对 MVC 没有硬性依赖,所以这应该不是问题。正如 Nan 在他的回答中提到的那样,dev.outlook.com 上的 tutorial 是一个可行的分步过程。它确实使用了 MVC,但希望您可以将其转换为您的非 MVC 网络应用程序。

该教程使用 Azure v2 应用程序模型,不需要您创建 Azure 订阅甚至 Office 365 订阅,因为它适用于 Outlook.com!

如果是库让您感到困惑,那么请看一下这个无库示例:https://github.com/jasonjoh/dotnet-outlook-nosdk。它手动实现 OAuth 和 REST 调用并通过 HTTP 发送它们。