小编tgo*_*sch的帖子

当我尝试通过EWS托管API读取/更新任务的.Body时出错 - "您必须先加载或分配此属性,然后才能读取其值."

我正在使用Exchange Web服务托管API来处理任务(Exchange 2007 SP1).我可以创造它们.但是,当我尝试进行更新时,它适用于除.Body字段之外的所有字段.每当我尝试访问(读取/更新)该字段时,它都会出现以下错误:

"You must load or assign this property before you can read its value."
Run Code Online (Sandbox Code Playgroud)

我使用的代码如下所示:

   //impersonate the person whose tasks you want to read
   Me.Impersonate(userName); //home-made function to handle impersonation

   //build the search filter
   Exchange.SearchFilter.SearchFilterCollection filter = New Exchange.SearchFilter.SearchFilterCollection();
   filter.Add(New Exchange.SearchFilter.IsEqualTo(Exchange.TaskSchema.Categories, "Sales"));

   //do the search
   EWS.Task exTask = esb.FindItems(Exchange.WellKnownFolderName.Tasks, filter, New Exchange.ItemView(Integer.MaxValue));

   exTask.Subject = txtSubject.Text;  //this works fine
   exTask.Body = txtBody.Text; //This one gives the error implying that the object isn't loaded
Run Code Online (Sandbox Code Playgroud)

奇怪的是,检查属性包显示该对象包含33个属性,但{Body}不是其中之一.该属性似乎是从基类.Item或其他东西继承而来的.

那么,我是否需要将对象重新加载为类型Item?或者通过.Bind或其他东西重装?请记住,我需要使用数千个项目来完成此操作,因此效率对我来说很重要.

exchange-server exchangewebservices ews-managed-api

34
推荐指数
3
解决办法
3万
查看次数

如何使用SSMS中的表值参数执行存储过程

当我右键单击存储过程,并选择执行存储过程命令时,我应该将表值参数作为值传递给什么?

我不是在谈论SSMS"查询"窗口.我正在谈论右键单击SP时显示的"执行过程"对话框.

我可以通过此屏幕直接将参数值提供给SP吗?

ssms sql-server-2012

8
推荐指数
1
解决办法
4192
查看次数

日期的 ADO 记录集类型

警告:经典 ASP 领先。:)

我正在处理一个旧的经典 ASP 应用程序,但我遇到了一个奇怪的 ADODB.Recordset 对象。

我有一个包含特定字段的 SQL2012 数据库表。我们称之为AnnoyingField。它在 SQL 中的数据类型是“日期”。

ASP 在表上打开一个带有 SELECT 的 ADODB.Recordset 来收集字段,然后执行一些循环来完成它的工作:

For each Field in rs.Fields
    typeid = rs(Field.Name).Type
    'do stuff based on type
Run Code Online (Sandbox Code Playgroud)

出于某种原因,AnnoyingField的类型返回为 202 (nvarchar),而不是日期的预期类型之一(133 甚至 7)。这在代码中导致了一些问题。

我用另一个“日期时间”类型的字段进行了测试,记录集代码返回了日期时间字段的预期类型.. 135。

任何人都知道为什么“日期”字段作为 nvarchar 返回?

在这种情况下,可能无法将数据库字段从日期更改为日期时间,即使这可能是获取预期数据的逻辑路径。

sql-server types adodb recordset asp-classic

3
推荐指数
1
解决办法
6229
查看次数