I want to send a notification email after creating a contact in CRM. For that I have written the following code.. but it is throwing an exception of "Invalid Party object type 9". any one can help plz
Thanks
c# code behind
================================================
//Get Contract Information
Entity Contract = Common.Common.RetrieveSingle("contract", "contractid", ConditionOperator.Equal, contractId);
if (Contract != null)
{
EntityReference ContactGuid = (EntityReference)Contract.Attributes["customerid"];
if (ContactGuid.Id != Guid.Empty)
{
Entity LoginInfo = Common.Common.RetrieveSingle("gr_contactlogin", "gr_contact", ConditionOperator.Equal, ContactGuid.Id);
if (LoginInfo != null)
{
UserName = LoginInfo.Attributes.Contains("gr_username") ? LoginInfo.Attributes["gr_username"].ToString() : "";
Password = LoginInfo.Attributes.Contains("gr_password") ? LoginInfo.Attributes["gr_password"].ToString() : "";
if (UserName != string.Empty && Password != string.Empty)
{
Entity ConsumerTeam = Common.Common.RetrieveSingle("team", "name", ConditionOperator.Equal, "Consumers", null);
Logger.Debug("Consumer Team with Id: " + ConsumerTeam.Id);
if (ConsumerTeam != null)
{
//Defining Activity Parties (starts)
Entity Fromparty = new Entity("activityparty");
Entity Toparty = new Entity("activityparty");
//set partyid
Toparty["partyid"] = new EntityReference("contact", ContactGuid.Id);
Fromparty["partyid"] = new EntityReference("team", ConsumerTeam.Id);
//create email entity
Entity Email = new Entity("email");
Email["from"] = new Entity[] { Fromparty };
Email["to"] = new Entity[] { Toparty };
Email["subject"] = "Account Login Information";
Email["description"] = PopulateBody(UserName,Password);
Email["directioncode"] = true;
Email["regardingobjectid"] = new EntityReference("contact", ContactGuid.Id);
Guid EmailID = Common.Common.Create(Email);
//Sending email
SendEmailRequest reqSendEmail = new SendEmailRequest();
reqSendEmail.EmailId = EmailID;//ID of created mail
reqSendEmail.TrackingToken = "";
reqSendEmail.IssueSend = true;
SendEmailResponse res = (SendEmailResponse)Common.Common.Execute(reqSendEmail);
}
}
}
}
}
===========================================================