我正在尝试获取工作流过程历史记录项的每个活动的批准状态,如下所示。
var status = csClient.Read(activitiydetails.Id, readoption) as ApprovalStatusData;
logdetails("Activity Approval Status--->" + status.Title.ToString());
我收到“对象引用错误”
我正在尝试获取工作流过程历史记录项的每个活动的批准状态,如下所示。
var status = csClient.Read(activitiydetails.Id, readoption) as ApprovalStatusData;
logdetails("Activity Approval Status--->" + status.Title.ToString());
我收到“对象引用错误”
当您使用As
运算符强制转换为 时ApprovalStatusData
,您应该期望如果从返回的对象csClient.Read()
不是一个ApprovalStatusData
,它的值将为空。当您尝试在以下行中使用它时,您将收到对象引用错误。
从您的变量称为 [sic] 的事实看来activitiydetails
,您不应该期望ApprovalStatusData
返回 an 。
如果您使用正确的 Cast 运算符编写代码,则当您尝试强制转换时代码将失败,并抛出 InvalidCastException。
var status = (ApprovalStatusData)csClient.Read(activitiydetails.Id, readoption);
logdetails("Activity Approval Status--->" + status.Title.ToString());