외부 테이블에서 CRM 데이터를 업데이트해야합니다. 모두 잘 작동하지만 매우 느립니다. 이와Parallel.ForEach를 사용하여 CRM 데이터 삽입 및 업데이트
static void Main(string[] args)
{
var dbClient = new CollectionEntities(); //Get database Entities
using(var xrm = new XrmServiceContext("Xrm"); // Get CRM Entities
{
foreach (var row in dbClient.Client) //Reading rows from database
{
var c = (from a in crm.new_clientSet where a.new_Idnumber == row.Client_ID select a).FirstOrDefault(); // IS there clint with id from database
if (c == null)// if client not exist i create new if exists I update data
{
c = new new_client { new_Idnumber = row.Client_ID };
crm.AddObject(c);
}
c.new_name = row.Client_name; //[Client_name]
c.new_Idnumber = row.Client_ID;//[Client_ID]
c.EmailAddress = row.Email;//[Email]
xrm.AddObject(c);
xrm.SaveChanges();
}
}
}
내가 삽입하고 CRM의 데이터를 업데이트하지만이 둔화 될 수 있습니다 : 이것은 내 코드입니다. 이 Parallel.ForEach 메서드 또는 일부 다른 메서드를 사용하여이 속도를 높이는 방법이 있습니까? 감사!