gpt4 book ai didi

c# - ssis 中的两个 C# 源脚本组件导致 "Object reference not set to an instance of an object"

转载 作者:太空宇宙 更新时间:2023-11-03 15:46:36 25 4
gpt4 key购买 nike

真是奇怪的错误。我在 SSIS 中有两个独立工作的源 C# 脚本。基本上,他们会从外部 CRM 来源获取信息。

当它们都在同一个脚本中启用时,在执行的第一个脚本中我得到:

Object reference not set to an instance of an object

这行得通

http://i.imgur.com/dz6fi2o.png

这不会 - 它会在第一个脚本上卡住。

http://i.imgur.com/Kgvi51a.png

我认为这可能是缓冲区问题,但它仍会在抛出错误之前完成第一个脚本。这两个脚本都有唯一的 id 和 guid。

调试是无用的,它不会停止在我编写的任何代码上。我很难过。

这是 ScriptThree.CreateNewOutputRows() - 请务必注意,scriptthree 是第二个数据流任务的一部分。

    public override void CreateNewOutputRows()
{
/*
Add rows by calling the AddRow method on the member variable named "<Output Name>Buffer".
For example, call MyOutputBuffer.AddRow() if your output was named "MyOutput".
*/

QueryExpression query = new QueryExpression("email")
{
ColumnSet = new ColumnSet(new string[] { "subject", "regardingobjectid", "createdon", "directioncode" }),
PageInfo = new PagingInfo()
{
Count = 250,
PageNumber = 1,
ReturnTotalRecordCount = false
}
};

EntityCollection results = null;

do
{
results = organizationservice.RetrieveMultiple(query);

foreach (Entity record in results.Entities)
{
emailBuffer.AddRow();

emailBuffer.emailid = record.Id;

if (record.Contains("subject"))
emailBuffer.subject = record.GetAttributeValue<string>("subject");
if (record.Contains("regardingobjectid"))
emailBuffer.regarding = record.GetAttributeValue<EntityReference>("regardingobjectid").Id;
if (record.Contains("createdon"))
emailBuffer.createdon = record.GetAttributeValue<DateTime>("createdon");
if (record.Contains("directioncode"))
emailBuffer.directioncode = record.GetAttributeValue<bool>("directioncode");

}
query.PageInfo.PageNumber++;
query.PageInfo.PagingCookie = results.PagingCookie;
}
while (results.MoreRecords);
}

最佳答案

我仍然不知道确切的原因是什么,但是我将我的脚本复制并粘贴到一个新的脚本对象中,它突然又开始工作了。

关于c# - ssis 中的两个 C# 源脚本组件导致 "Object reference not set to an instance of an object",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27866926/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com