gpt4 book ai didi

.net - 将 ASP.NET Intranet 应用程序与 Outlook 日历集成的技术

转载 作者:行者123 更新时间:2023-12-04 12:00:34 24 4
gpt4 key购买 nike

我不能再无视用户的咆哮了。他们想要一个任务调度系统,在某些时候我必须交付。我正在考虑制作自己的(不难),但是用户将拥有两个并排的任务管理系统,因为他们已经将 Outlook 用于同一件事。

在 Outlook 日历/任务集成方面,我想到了两种可能的方法:

1) 使用 JavaScript 和自动化

我似乎记得可以在 JavaScript 中进行自动化。

优点:

  • 我以前做过自动化。

  • 缺点:
  • 自动化太可怕了!
  • 一些坚持(展望
    实体)的责任
    客户端代码,其余的
    服务器端的责任
    代码。这感觉很可怕。
  • 可能的安全问题/
    从 IT 部门阻止

  • 2) 使用一些.NET API 直接与Exchange Server 交互

    Intranet 使用单点登录,因此希望这可以简化安全问题。

    优点:
  • 所有持久性代码都是
    服务器端。

  • 缺点:
  • 我什至不知道这样的 API
    存在。

  • 一如既往,我喜欢站在巨人的肩膀上。有没有走过这条路的人能给我一些指导吗?

    最佳答案

    我们最近使用 Exchange Web Services Managed API 对我们的 Intranet 应用程序进行了相同类型的集成。 .这将是第二种选择的一种方式。我从来没有尝试过使用 JavaScript,所以不知道。

    关于评论 1 的查询:您需要一个 AD 用户,您将使用该用户来模拟和处理其他用户帐户。请引用以下示例:

    假设我有一个名为 fabrikam\myappname 的 Active Dir 帐户带密码 Fabi$Gre@t2010

    void CreateFolder(string targetUserEmail) {
    string appName = "myappname";
    string appPassword = "Fabi$Gre@t2010";
    string emailDomain = "fabrikam";
    string appEmail = string.Format("{0}@{1}.com", appName, emailDomain);

    ExchangeService service = new ExchangeService();
    service.Credentials = new NetworkCredential(appName, appPassword, emailDomain);
    service.AutodiscoverUrl(appEmail);

    service.ImpersonatedUserId = new ImpersonatedUserId(ConnectingIdType.SmtpAddress, targetUserEmail);

    Folder newFolder = new Folder(service);
    newFolder.DisplayName = "TestFolder1";

    newFolder.Save(WellKnownFolderName.Inbox);
    }

    请检查文章 Configuring Exchange Impersonation使模拟工作。

    希望有帮助。

    关于.net - 将 ASP.NET Intranet 应用程序与 Outlook 日历集成的技术,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4328844/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com