通过EWS下载所有电子邮件信息
我目前想下载所有电子邮件(无论它们在哪个文件夹中)到我的SQL Server数据库. 现在,虽然我知道如何搜索电子邮件或订阅流通知,但我尚未了解如何将所有消息从EWS同步到我的数据库. var emailMessages = GetItems(WellKnownFolderName.MsgFolderRoot); foreach (var emailMessage in emailMessages) { Debug.WriteLine(emailMessage.Subject); } private IList GetItems(WellKnownFolderName wellKnownFolderName) where T : Item { IList result = new List(); Folder folder = Folder.Bind(_exchangeService, wel
0 2024-04-26
编程技术问答社区
用户创建的文件夹的Exchange Web服务文件夹标识
我在一个root的孩子的交换邮箱中有一个文件夹,由用户创建. 如何使用EWS托管API找到这样的文件夹? 我尝试使用深处遍历,但找不到文件夹. 编辑:这是我用来获取用户创建文件夹的代码: ExchangeService server = new ExchangeService(ExchangeVersion.Exchange2007_SP1); server.UseDefaultCredentials = true; string configUrl = @"https://yourServerAddress.asmx"; server.Url = new Uri(configUrl); // set View FolderView view = new FolderView(100); view.PropertySet = new PropertySet(BasePropertySet.IdOnly); view.PropertySet.Add(FolderS
4 2024-04-26
编程技术问答社区
微软Exchange网络服务读取我的本地Outlook文件夹,而不是另一个地址。
我已经搜索了我认为网络上的每种解决方案,但尚未找到的解决方案,所以就在这里. 我的应用程序使用Exchange Web Services API 2.0,旨在阅读prodsupport@company.com的电子邮件地址.该应用程序旨在阅读到Prodsupport的收件箱中,并将其移动到称为" stataging"的自定义创建文件夹.我能够阅读prodsupport收件箱的电子邮件. 问题是,当我通过findfolders()迭代时,我不知道如何阅读prodsupport的电子邮件文件夹列表.我见过的所有示例都使用了众所周知的foldername名称,但对于自定义文件夹不起作用.当我移动电子邮件时,它将其从Prodsupport的收件箱移动到我的本地(myemailaddress@company.com)登台电子邮件文件夹,而不是Prodsupport的登台电子邮件文件夹.对发生的事情有什么想法? 我尝试将FindResults变量的ParentFolderId(我认
10 2024-04-26
编程技术问答社区
C#-通过Powershell运行空间删除Exchange电子邮件地址
per Set-Mailbox "GenMgr" -EmailAddresses @{remove="GenMgr@domain.com"} 但是,通过远程runspace调用下面的pscommand对象抛出一个system.management.automation.remoteexception错误. command.AddCommand("Set-Mailbox"); command.AddParameter("Identity", "GenMgr"); command.AddParameter("EmailAddresses", "@{remove='GenMgr@domain.com'}"); powershell.Commands = command; powershell.Invoke(); System.Management.Automation.Remoteexception:无法处理参数" emailAddresses"的参数转换.无法将值转换为"@{
4 2024-04-26
编程技术问答社区
尝试发送邮件时出错。不能使用EWS发送
我正在连接到Exchange Server,并且收到了所有未读邮件,但是一条新消息不想发送 消息代码 var newHTML = html.HTMLCode.Replace("{House}", house.Number) .Replace("{Token}", token.Number) .Replace("{contactPerson}", string.Format("{1}", contactPerson, contactPerson)); LogError.WriteToFile("Has House and token"); //Send mail with toke
4 2024-04-26
编程技术问答社区
如何恢复被删除的约会
如何使用EWS 2.0恢复已删除的约会? 我想我可以在众所周知的foldername.RecoverableItemsdeletions文件夹中搜索它.但是我只有itemID.可悲的是,我不能在搜索filter中使用它... 最好的方法是什么? 我的尝试: ItemView view = new ItemView(10); SearchFilter searchFilter = new SearchFilter.IsEqualTo(ItemSchema.Id, itemChange.ItemId); var findResults = exchangeService.FindItems(WellKnownFolderName.RecoverableItemsDeletions, searchFilter, view); List ids = null; foreach (var findResult in findResults) {
12 2024-04-26
编程技术问答社区
如何在C#中使用Exchange WebServices获得地址列表(非全局)?
Web显示了数十个示例来查询交换的全局地址列表,但我想查询特定地址列表!因此,我们企业中的每个用户当然都在我们的全局地址列表中列出,但我想查询我们企业中特定公司的地址列表. 在下面的示例中,Aswebo,Cosimco等.是地址列表. 如何列出这些地址列表? 如何在这些地址列表中列出人员? 解决方案 我没有Exchange设置来测试此代码,因此需要修改,但它应该为您提供一个探索的起点. 的想法是,您设置 itemview Contactschema 以公司的结果检索结果. // Get the number of items in the Contacts folder. To keep the response smaller, request only the TotalCount property. ContactsFolder contactsfolder = ContactsFolder.Bind(service,
4 2024-04-26
编程技术问答社区
交换网络服务-组织者属性
我正在使用Exchange Web服务,试图找到会议电子邮件地址的组织者 我尝试使用 Appoint.Organizer.Address 但是某些属性为null(请参阅图像). 如何获得组织者的电子邮件地址? 链接到图像(对不起,不足以嵌入) https://i.stack.imgur.com/wsv2r.png /p> 解决方案 您正在使用什么操作?如果您刚刚使用了FindItems,那么这就是您所期望的,因为只有发件人的显示名(是组织者)与FindItems一起返回.要获取填充地址属性,您需要进行getItem(或在托管API中加载). microsoft.com/en-us/library/office/jj713594(v=office.15).aspx" rel =" nofollow"> http://msdn.microsoft.com/en-us/library/library/office/office/jj713594(V =
2 2024-04-25
编程技术问答社区
如何使用EWS管理的API来回复电子邮件?
我创建了一个使用EWS托管API 2.2的应用程序. 该应用程序使用拉力通知获取新电子邮件并将电子邮件的副本保存在数据库中. 然后,在应用程序中,我想从数据库中获取电子邮件并回复它. 为了回复该消息,我需要使用我存储在数据库中的ItemID从EWS检索它. 当然,我可以创建一个新的电子邮件和发送它,但是新电子邮件将具有不同的对话ID,而对于应用程序方案是不可接受的. 因此,为了实现这一目标,我使用以下代码行 emailmessage.bind(服务,itemid); 要使此方法起作用,我必须从数据库中实例化itemID,但是该itemID构造函数仅作为参数仅作为唯一INDID,并使用Null ChangeKey创建它. 如果我使用此itemID(使用Null ChangeKey),我会收到以下错误: microsoft.exchange.webservices.data.serviceresponseexception:在商店中找不到指定的对象. 我认为这是
0 2024-04-25
编程技术问答社区
使用微软的EWS来创建在线Lync/Skype会议
有人知道如何使用EWS使用在线会议(Lync/Skype)创建会议请求? 因此,我的方法首先是通过Outlook创建在线和定期会议,然后模拟使用相同属性的事件的创建. 这是我参加会议的代码段(calendarView已经以开始日期,结束日期等初始化了: ) ExtendedPropertyDefinition extendedOnlineMeetingProperty = new ExtendedPropertyDefinition(new Guid("{00062008-0000-0000-c000-000000000046}"), 34112, MapiPropertyType.Integer); var properties = new PropertySet( ItemSchema.Id, AppointmentSchema.ICalUid,
8 2024-04-25
编程技术问答社区
EWS错误信息。"403: 禁止-没有足够的范围"
上周,我在这里提出了一个问题,我收到错误消息说: 401:未经授权 - 无效访问令牌 我通过使用X.509证书而不是客户端凭据(aad的客户端ID abnd client Secret)设法解决了此错误.现在,使用证书,我收到一条新的错误消息,说: 403:禁止 - 范围不够 我相信这与AAD的权限有关? i权限如下(仅一个许可): 应用程序权限:从所有邮箱中读和写电子邮件 我如何收到访问令牌: //Create the certificate file, using the path (certFile), password (certPassword) and the MachineKeySet X509Certificate2 cert = new X509Certificate2(certFile, certPassword, X509KeyStorageFlags.MachineKeySet); //Create the Cli
14 2024-04-25
编程技术问答社区
在VSTO for Outlook中访问项目时,如何访问用EWS设置的扩展属性
场景是这样的:有一个应用程序,该应用程序导出到Outlook,然后具有将数据发送到您的应用程序的Outlook添加.以任何方式发送信息,然后在Outlook中以用户属性或应用程序中的应用程序创建Outlook项目,以使用EWS创建该项目并使用扩展属性. 很容易. . 设置扩展属性的方法如下: extendedPropertyDefinition = new ExtendedPropertyDefinition(DefaultExtendedPropertySet.PublicStrings, "CustomProperty", MapiPropertyType.String); contact.SetExtendedProperty(extendedPropertyDefinition, customPropertyValue); 那么,如何访问Outlook Add In中的应用程序设置的扩展属性? 解决方案 在添加中,一个人并不简单地找到该
2 2024-04-24
编程技术问答社区
使用Exchange网络服务进行会议的时间
我试图找出我们在会议上花费了多少时间(约100人).为了简单起见,我们可以将所有繁忙的时间视为在会议中.但是我不知道该怎么做,我希望有人有一个想法 解决方案 在网上使用EWS API进行此类内容的示例.例如,您可以与您合作的想法: 使用EWS托管API进行约会.以下代码示例显示了如何使用EWS托管API检索用户的约会,该约会涉及指定的开始时间和结束时间. // Initialize values for the start and end times, and the number of appointments to retrieve. DateTime startDate = DateTime.Now; DateTime endDate = startDate.AddDays(30); const int NUM_APPTS = 5; // Initialize the
10 2024-04-24
编程技术问答社区
调用者没有分配任何在管理角色头中要求的RBAC角色。
我正在尝试通过Enkange Web服务访问交换邮箱.用户" ABC"有权访问Exchange邮箱.我可以创建文件夹,读取并从用户" ABC"的邮箱中发送电子邮件. 但是,当我尝试使用方法'getSearchableMailboxes'搜索另一个邮箱" def"时,我会收到以下错误. 呼叫者尚未分配管理角色标题中要求的任何RBAC角色. 任何帮助都将不胜感激. 谢谢 解决方案 ews ediscovery操作要求调用用户具有发现管理RBAC.有关更多信息,请参见此链接:分配Ediscovery persissions in Exchange Server
2 2024-04-24
编程技术问答社区
我如何在Exchange Web Api中更新一个联系人项目?
我尝试用一​​个空字符串更新EWS中的联系人属性,但它失败了.我不知道为什么. // works fine contact.Company = "SomeCompany"; contact.Update(ConflictResolutionMode.AlwaysOverwrite); // failed in Update with a service response exception contact.Company = ""; contact.Update(ConflictResolutionMode.AlwaysOverwrite); 我尝试null和string. 我究竟做错了什么? 解决方案 您确定 Contact 类型?我只看到var service = GetService(); var view = new ItemView(1); var searchFilter = new SearchFilter.IsEqualTo(Contact
6 2024-04-24
编程技术问答社区
微软图形客户端SDK与请求JSON的关系
我知道查询: https://graph.microsoft.com/v1.0/v1.0/me/me/messages/a > 对应于: graphclient.me.messages.request().getAsync() 我试图在Microsoft Graph Client中复制以下请求: 获取所有类别 获取所有包含其主题中某些单词的消息 链接将与此相似 https://graph.microsoft.com/v1.0/v1.0/me/me/messages/a >?$ search =" Hello World" 相应的图表客户端:?? 用类别更新这些消息 ? 文档仅给出2个示例,我在哪里可以找到有关此的示例/阅读材料的列表? 解决方案 为生产端点(v1.0)生成了SDK,因此您必须制作自定义请求 beta apis li> List options = new List { n
2 2024-04-24
编程技术问答社区
通过SMTP服务而不是作为外部发件人发送邮件的问题
我在将电子邮件发送给我的一个办公室分发组中有问题.问题如下: 远程服务器返回'550 5.7.133 resolver.rst.sendernotauthenticatiCatedForGroup;需要身份验证; 送货限制检查失败,因为发件人没有 发送到此组时已进行身份验证' 通过阅读此博客(Set-DistributionGroup -RequireSenderAuthenticationEnabled $false 这意味着问题是分发组是使用默认设置创建的,这意味着它不会从 外部发件人 中接收电子邮件. 我的问题是: 1-这是什么意思 "外部发件人" 交易所不接受上述电子邮件? 2-如果我不想在命令上运行,我的应用程序如何假装,因为它不是外部发件人? (请注意,当我使用Outlook时,我可以将电子邮件发送到该DL电子邮件,但从我的申请中获得了成功.请建议我. 我的代码在下面供您参考. using (var c
12 2024-04-24
编程技术问答社区
如何使用抑制自动响应在EWS/C#中发送电子邮件?
我一直在试图在MSDN文档和其他各种资源中找到答案,但是找不到有效的东西. 这是我正在使用的一些C#代码: private ExtendedPropertyDefinition SurpressAutoResponse = new ExtendedPropertyDefinition( DefaultExtendedPropertySet.InternetHeaders, "X-Auto-Response-Suppress", MapiPropertyType.String); // Also tried with StringArray and Integer private ExtendedPropertyDefinition OtherID = new ExtendedPropertyDefinition( DefaultExtendedPropertySet.InternetHeaders, "X-Custom-ID-
12 2024-04-24
编程技术问答社区
使用Exchange网络服务发送电子邮件时获得System.InvalidOperationException
我正在尝试使用Exchange Web服务发送回复电子邮件,并因以下例外而被阻止. System.InvalidOperationException HResult=0x80131509 Message=This operation can't be performed because this service object already has an ID. To update this service object, use the Update() method instead. Source=Microsoft.Exchange.WebServices StackTrace: at Microsoft.Exchange.WebServices.Data.ServiceObject.ThrowIfThisIsNotNew() at Microsoft.Exchange.WebServices.Data.Item.InternalCreate(Fo
8 2024-04-24
编程技术问答社区
当试图从EWS管理的API发送电子邮件时,401未授权。
好吧,我正在开发一个辅助,必须自动向他人发送电子邮件.我知道Office-js没有权限,我已经开始使用EWS托管API.我已经实现了SSO令牌,并且可以使用: Office.context.auth.getAccessTokenAsync() 获得令牌后,我向我的服务器拨打请求电话,在该服务器中我拥有我的EWS托管API,然后尝试发送带有forowing代码的电子邮件: ExchangeService exService = new ExchangeService(); exService.Url = new Uri(ewsUrl); ExchangeCredentials credentials = new OAuthCredentials(ssoToken); exService.Credentials = credentials; EmailMessage emailMessage = new EmailMessage(exService); 当我调用email
14 2024-04-24
编程技术问答社区