c# - ID = [id] 的帐户不存在,即使我不调用任何帐户?
问题描述
我正在编写一个控制台应用程序来将文件 .csv 上传到 CRM 中。这是我的代码:
var hundredData = File.ReadAllLines(@"..\..\Data\ImportList100Data.csv");
var dataList = from detailData in hundredData
let data = detailData.Split(';')
select new
{
GroupName = data[0],
ProjectNumber = data[1],
Name = data[2],
Members = data[3],
Customer = data[4],
ProjectStatus = data[5],
StartDate = data[6],
EndDate = data[7]
};
var list = dataList.ToList();
int totalData = list.Count();
int successUpd = 0;
int successCreate = 0;
log.Info("There are " + (totalData - 1) + " items to be processed");
var systemUser = getSystemUser(crmSvc);
for (int i = 1; i < list.Count(); i++)
{
var data = list[i];
DateTime startDate = DateTime.Parse(data.StartDate);
DateTime endDate = DateTime.Parse(data.EndDate);
int optSet;
switch (data.ProjectStatus.ToString())
{
case "New":
optSet = 283630000;
break;
case "Planned":
optSet = 283630001;
break;
case "In Progress":
optSet = 283630002;
break;
case "Finished":
optSet = 283630003;
break;
default:
throw new Exception("Invalid choice");
}
var visa = addMem(crmSvc, data.Members);
var proj = getProjID(context, data.ProjectNumber.ToString());
elca_Project newProject = new elca_Project();
newProject.new_ProjectGroup = QueryGroup(context, data.GroupName);
newProject.elca_name = data.Name.ToString();
newProject.elca_Customer = data.Customer.ToString();
newProject.elca_StartDate = startDate;
newProject.elca_EndDate = endDate;
newProject.elca_ProjectStatus = new OptionSetValue(optSet);
newProject.elca_Members = visa;
newProject.OwnerId = systemUser;
try
{
if (proj != null)
{
newProject.Id = proj.Id;
crmSvc.Update(newProject);
successUpd++;
log.Info("Item " + i + "/" + (totalData - 1) + ": Project was updated");
}
else
{
newProject.elca_ProjectNumber = data.ProjectNumber.ToString();
crmSvc.Create(newProject);
successCreate++;
log.Info("Item " + i + "/" + (totalData - 1) + ": Project was created");
}
}
catch(Exception e)
{
log.Error("Item " + i + "/" + (totalData - 1) + ": Failed with error " + e.Message, e);
}
}
并获取系统用户:
static EntityReference getSystemUser(CrmServiceClient crmSvc)
{
WhoAmIRequest systemUserRequest = new WhoAmIRequest();
WhoAmIResponse systemUserResponse = (WhoAmIResponse)crmSvc.Execute(systemUserRequest);
Guid userId = systemUserResponse.UserId;
return new EntityReference("systemuser", userId);
}
但即使我没有拨打任何帐户,我也会收到这样的错误。如何解决? 漏洞
非常感谢
解决方案
推荐阅读
- android - 在android中获取位置权限
- git - 将本地仓库连接到远程仓库上的新分支
- flutter - 如何将两个容器连续放置在颤动中?
- flutter - 有没有办法自定义一个重复的类?
- javascript - 跳过 createAsyncThunk 中的 arg 参数
- java - 尝试使用二维数组和 for 循环将两个矩阵相乘时出现 IndexOutOfBoundsException
- python - 在二维布尔数组(Python)中查找最高真值索引的有效方法
- c++ - 为什么这个指针在计算总和时传递一个值而不是地址?
- flutter-web - Flutter Web 问题与 HtmlViewElement 渲染
- javascript - vuejs:v-on不触发功能