我正在尝试通过单击Windows应用程序中的按钮在Microsoft Crm5中打开新手机活动。我使用的是Microsoft.xrm.sdk 我已经可以打开一个新的手机活动了。我甚至设置了主题和电话号码,但我无法设置“关于查找”。
这是我的代码:
var extraqs = string.Format("phonenumber={0}&subject={1}{2}", tel1, HttpUtility.UrlEncode("Calling from "), HttpUtility.UrlEncode(customerName));
extraqs += "®ardingobjectidtype=customer";
extraqs += "®ardingobjectid={" + guid + "}";
extraqs += "®ardingobjectidname=" + customerName;
_url = string.Format("{0}/Activities/phone/edit.aspx?{1}", crmAddress, extraqs);
Process.Start(@"C:\Program Files\Internet Explorer\iexplore.exe", _url);
我的相关查询是客户实体列表。如果我从参数中删除了aboutobjectidtype,我没有错误,但我的查找设置不正确。只显示客户名称,表格无法注册。当我在url参数中添加了aboutobjectidtype时,我收到一个错误,表单没有显示。
答案 0 :(得分:2)
我终于找到了答案,
首先,我不应该使用 HttpUtility.UrlEncode()我应该使用 Uri.EscapeUriString() 来编码网址。其次,我应该使用 pId 而不是 aboutobjectid ,第三,我应该设置查找类型= 1 而不是“帐户”。
这是正确的代码:
var extraqs = string.Format("phonenumber={0}&subject={1}{2}", tel1, "Calling from ", customerName);
extraqs += "&pType=1";
extraqs += "&pId={" + guid + "}";
extraqs += "&pName=";
extraqs += "&partytype=1";
extraqs += "&partyid={" + guid + "}";
extraqs += "&partyname=";
_url = string.Format("{0}/Activities/phone/edit.aspx?{1}", crmAddress, Uri.EscapeUriString(extraqs));
答案 1 :(得分:0)
请尝试使用以下代码:
var extraqs = string.Format("phonenumber={0}&subject={1}{2}", tel1, HttpUtility.UrlEncode("Calling from "), HttpUtility.UrlEncode(customerName));
extraqs += "&pType=account";
extraqs += "&pId={" + guid + "}";
extraqs += "&pName=" + customerName;
请记住,没有名为' customer'的实体。帐户和联系人不是客户。