在MVC3中获取Outlook会议请求更新

时间:2011-12-23 15:01:32

标签: asp.net-mvc asp.net-mvc-3 model-view-controller automation outlook

我在这里有一个问题。 我正在为我办公室的人力资源部开发一个带有Razor引擎的VS2010-MVC 3应用程序。

目标是自动化候选人聘用流程,从安排面试到船上。

现在遇到了挑战:

将安排面试,并将会议请求发送给小组成员(全部来自网络应用程序本身)。现在,我的情况是找出谁接受了这个邀请,这样它就可以成为我申请的一个组成部分,知道他/她是否可以参加面试。

它应该找出小组成员的空闲时间,然后相应地发送邀请。

现在我的想法:

我想在服务器上安装了microsoft outlook。我们有一个默认发件人(careers@xxxx.com),其邮箱设置已经完成。我的应用程序可以有一个网页来搜索发送的会议请求,HR的某个人可以获取更新。

但这涉及一些手工工作。我想要自动化一切。

你们有些人可以投光吗?如果您需要我更清楚,请告诉我。

2 个答案:

答案 0 :(得分:1)

你看过Outlook Primary Interop Assemblies了吗?它允许对Exchange服务器进行托管访问。

修改http://msdn.microsoft.com/en-us/library/ff184601.aspx以返回空闲/忙碌信息:

private void GetCurrentUserInfo(DateTime start, int minPerChar, Object completeFormat)
{
    var addrEntry = Application.Session.CurrentUser.AddressEntry;
    if (addrEntry.Type == "EX")
    {
        var user = Application.Session.CurrentUser.AddressEntry.GetExchangeUser();
        if (user != null)
        {
            var freeBusy = user.GetFreeBusy(start, minPerChar, completeFormat);
        }
    }
}

查看msdn获取GetFreeBusy()的用法。

答案 1 :(得分:0)

假设您拥有Exchange 2007或更高版本,我建议您使用Exchange Web Services。如果我没弄错的话,较新版本的Outlook使用EWS与Exchange服务器通信。我认为最新版本是EWS 1.2