问题描述
我正在尝试使用 Exchange Web 服务获取过去 5 分钟内收到的电子邮件数。当我运行这个控制台时,我得到 NullReferenceException。而 StackTrace 不是那么有用。 以下是我目前在 .net 5 控制台应用程序中的内容:
using System;
using System.Net;
using Microsoft.Exchange.WebServices.Data;
namespace ExchangeWebService
{
class Program
{
private static Guid SearchTestGUID = new Guid("{AA3DF801-4FC7-401F-BBC1-7C93D6498C2E}");
private static ExtendedPropertyDeFinition customPropDeFinition =
new ExtendedPropertyDeFinition(SearchTestGUID,"ItemIndex",MapiPropertyType.Integer);
static void Main(string[] args)
{
ExchangeService service = new ExchangeService();
service.Credentials = new NetworkCredential("<username>","<password>","<domain>");
service.Url = new Uri(@"https://<EXCHANGE_SERVER>/Exchange.asmx");
var mailBox = new MailBox("<EMAIL_TO_SEARCH_INBox>");
var folderName = new FolderId(WellKNownFolderName.InBox,mailBox);
var view = new ItemView(120);
SearchFilter filter = new SearchFilter.IsLessthanorEqualTo(ItemSchema.DateTimeReceived,DateTime.Now.AddMinutes(-5));
var results = service.FindItems(folderName,filter,view);
var count = results.Items.Count;
}
}
}
这里抛出了一个异常
未处理的异常。 System.NullReferenceException:对象引用
未设置为对象的实例。在
Microsoft.Exchange.WebServices.Data.ServiceRequestBase.WrapStream(Stream
responseStream,String contentEncoding) 在
Microsoft.Exchange.WebServices.Data.ServiceRequestBase.GetResponseStream(IEwsHttpWebResponse
响应)在
Microsoft.Exchange.WebServices.Data.SimpleServiceRequestBase.ReadResponse(IEwsHttpWebResponse
响应)在
Microsoft.Exchange.WebServices.Data.SimpleServiceRequestBase.InternalExecute()
在
Microsoft.Exchange.WebServices.Data.MultiResponseServiceRequest1.Execute() at Microsoft.Exchange.WebServices.Data.ExchangeService.FindItems[TItem](IEnumerable
1
parentFolderIds,SearchFilter searchFilter,String queryString,ViewBase 视图、分组 groupBy、ServiceErrorHandling
errorHandlingMode) 在
Microsoft.Exchange.WebServices.Data.ExchangeService.FindItems(FolderId
parentFolderId、SearchFilter searchFilter、ViewBase 视图)在
ExchangeWebService.Program.Main(String[] args) 中
C:\Temp\ExchangeWebService\ExchangeWebService\Program.cs:line 44
C:\Temp\ExchangeWebService\ExchangeWebService\bin\Debug\net5.0\ExchangeWebService.exe (进程 34216)以代码 0 退出
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)