4.导入潜在顾客
·使用 Visual Studio 2005 创建控制台应用程序
(1) 在“开始”菜单上,单击“Microsoft® Visual Studio® 2005”。
(2) 依次单击“文件”、“新建”和“项目”。
(3) 在“项目类型”中,展开“Visual C#”节点。
(4) 单击“Windows”。
(5) 单击“控制台应用程序”。
(6) 在“名称”文本框中,键入 CrmLeadImport。
(7) 在“位置”文本框中,键入或找到以下位置。C:\Class Materials\Extending\Ch3\CrmLeadImport
(8) 清除“创建解决方案的目录”选项。
(9) 单击“确定”。
·更改项目的默认命名空间
(1) 在解决方案资源管理器中,右键单击“CrmLeadImport”。
(2) 单击“属性”。
(3) 将“程序集名称”更改为:Microsoft.Crm.Training.ExtendingCrm.Labs.Chapter(3)CrmLeadImport。
(4) 将“默认命名空间”更改为:Microsoft.Crm.Training.ExtendingCrm.Labs.Chapter3。
·添加 CRM SDK Web 引用
(1) 在解决方案资源管理器中,右键单击“引用”。
(2) 单击“添加 Web 引用”。
(3) 在“URL”文本框中,键入http://crm/MsCrmServices/2007/CrmService.asmx
(4) 单击“前往”。
(5) 在“Web 引用名”文本框中,键入“CrmSdk”。
(6) 单击“添加引用”。
·复制程序源文件的内容
(7) 打开文件 C:\Class Materials\Extending\Ch3\CrmLeadImport\Program.cs。
(8) 将该文件的内容复制到解决方案中的 Program.cs 文件。
(9) 关闭示例 Program.cs 文件。
·在代码中引用 WSDL
在 Program.cs 文件中,为 WSDL 添加以下 using 语句
using Microsoft.Crm.Training.ExtendingCrm.Labs.Chapter(3)CrmSdk.;
·设置 Web 服务
添加以下代码来设置 Web 服务。确保在数据集中循环前添加该代码。
CrmAuthenticationToken token = new CrmAuthenticationToken();
// You can use enums.cs from the SDK\Helpers folder to get the enumeration for AD Authentication.
token.AuthenticationType = 0;
token.OrganizationName =“AdventureWorksCycle”;
CrmService service = new CrmService();
service.Url =“http://crm/MsCrmServices/2007/CrmService.asmx”;
service.CrmAuthenticationTokenValue = token;
service.Credentials = System.Net.CredentialCache.DefaultCredentials;
·添加导入代码
(1) 在 Program.cs 文件中查找“TODO:Add Lead Import Code Here”。
(2) 对于 DataTable 返回的每一行,“潜在顾客”都将使用表 3-3 中的相应潜在顾客属性来分派值。
(3) 在 Microsoft Dynamics CRM 中针对每行创建潜在顾客。
foreach (DataRow row in leads.Rows)
{
// Create the lead object and populate its values
// This code expects that all fields have values and are well formed
lead currentLead = new lead();
currentLead.subject = (string)row[“Topic”];
currentLead.firstname = (string)row[“First Name”];
currentLead.lastname = (string)row[“Last Name”];
currentLead.companyname = (string)row[“Company Name”];
currentLead.numberofemployees = new CrmNumber();
currentLead.numberofemployees.Value = (int)row[“Number Of Employees”];
currentLead.revenue = new CrmMoney();
currentLead.revenue.Value = decimal.Parse(row[“Annual Revenue”].ToString(), NumberStyles.Currency);
// Create the lead in Microsoft Dynamics CRM
Guid id = service.Create(currentLead);
}
·生成应用程序并进行测试
(1) 在解决方案资源管理器中,右键单击 CRMLeadImport 项目,然后单击“生成”以生成应用程序。
(2) 通过在调试器中运行或转到以下位置来测试该应用程序:C:\Class Materials\Extending\Ch\CrmLeadImport\CrmLeadImport\bin\Debug\Microsoft.Crm.Training.ExtendingCrm.Labs.Chapter(3)CrmLeadImport.exe。
(3) 运行控制台应用程序并打开 Microsoft Dynamics CRM 网站,以查看是否已将联系人成功地导入到潜在顾客中。