我正嘗試使用動態實體創建新聯繫人。我在CRM SDK中找到的示例具有此代碼。在MS CRM 4.0中創建動態實體
// Set the properties of the contact using property objects.
StringProperty firstname = new StringProperty();
firstname.Name = "firstname";
firstname.Value = "Jesper";
StringProperty lastname = new StringProperty();
lastname.Name = "lastname";
lastname.Value = "Aaberg";
// Create the DynamicEntity object.
DynamicEntity contactEntity = new DynamicEntity();
// Set the name of the entity type.
contactEntity.Name = EntityName.contact.ToString();
// Set the properties of the contact.
contactEntity.Properties = new Property[] {firstname, lastname};
在我的代碼中,我有以下實現。
StringProperty sp_Field1 = new StringProperty("Field1","Value1");
StringProperty sp_Field2 = new StringProperty("Field2","Value1");
CrmService service = new CrmService();
service.Credentials = System.Net.CredentialCache.DefaultCredentials;
// Create the DynamicEntity object.
DynamicEntity contactEntity = new DynamicEntity();
// Set the name of the entity type.
contactEntity.Name = EntityName.contact.ToString();
// Set the properties of the contact.
contactEntity.Properties = new Property[] {sp_Field1,sp_Field2};
我在代碼中看不到很多差異。在我在互聯網上找到的例子中,我有和SDK一樣的實現。但是,如果我運行相同的我碰到下面的錯誤
CS0029:無法隱式轉換類型「Microsoft.Crm.Sdk.StringProperty」到「Microsoft.Crm.Sdk.PropertyCollection」
我試着創建了一個類型爲PropertyCollection的新變量(屬於mscrm名稱空間的一個變量),並將stringpropertys添加到該變量中並將其傳遞給實體。
Microsoft.Crm.Sdk.PropertyCollection propTest = new Microsoft.Crm.Sdk.PropertyCollection();
propTest.Add(sp_SSNNo);
propTest.Add(sp_FirstName);
contactEntity.Properties = new Property[] {propTest};
這給了我下面的錯誤
CS0029:無法隱式轉換類型 'Microsoft.Crm.Sdk.PropertyCollection' 到 'Microsoft.Crm.Sdk.Property'
我相信它有一個小的類型轉換錯誤,但我無法找出錯誤的位置。而且,即使這是一個類型錯誤,爲什麼它在因特網上給出的所有樣本都適用,而不適合我。我試圖讓代碼示例運行,但我遇到了相同的轉換錯誤。請讓我知道,如果你需要更多的信息,對此,任何幫助將不勝感激。