2011-09-23 36 views
0

我是C#的總新手。嘗試創建自定義實體記錄。我創建了一個可以連接和創建CRM自定義實體記錄的Windows服務,但前提是我需要爲查詢編寫GUID代碼。MS CRM c#:從字典中拾取字符串guid,並在創建新的CRM記錄時使用它來填充查找字段

如何從字典中拾取GUID並將其轉換爲像我爲文本字段所做的查找?片段在下面。

aar_assessmentresult aar_assessmentresult = new aar_assessmentresult(); 
foreach (string key in dicColumnList.Keys) 
        { 
         colVal = string.Empty; 
         if (dicColumnList.TryGetValue(key, out colVal)) 
         { 

          //this works 
          if (key.ToString() == "AssessmentResultName") 
          { 
           aar_assessmentresult.aar_name = colVal.Replace("'", "''"); 
          } 

          //Code breaks here        
    if (key.ToString() == "ContactID") 
          { 

           Guid contactid = new Guid(); 
           aar_assessmentresult.aar_contactid = new Lookup(); 
           aar_assessmentresult.aar_contactid.type = "contact"; 
           aar_assessmentresult.aar_contactid.Value = contactid; 
          } 

         } 
        } 
crmService.Create(aar_assessmentresult); 
+1

之前,究竟發生了什麼? – Matt

回答

1

,當你這樣做:

Guid contactid = new Guid(); 
aar_assessmentresult.aar_contactid = new Lookup(); 
aar_assessmentresult.aar_contactid.type = "contact"; 
aar_assessmentresult.aar_contactid.Value = contactid; 

您要設置一個聯繫人查找與無效引用,因爲你的變量的ContactID並沒有涉及到現有的聯繫人記錄。 您必須在之前「在這裏斷碼」創建聯繫人或當你說指向一個有效的現有聯繫人做

crmService.Create(aar_assessmentresult); 
+0

對不起,我不太明白。字典中的Guid是用於有效的現有聯繫人。我只想使用此GUID來創建聯繫人的查找。你是否說這是不可能的,如果沒有首先撤回聯繫? –

相關問題