我正在尝试从 CRM 4.0 中检索联系人列表,但我遇到了身份验证问题。根据我的阅读,列出所有客户的方法是解析从 ExportAllXmlRequest 返回的 XML
问题是,当我浏览到http://crmserver/MSCRMServices/2007/spla/CRMDiscoveryService.asmx时,我得到一个未经授权的 401.2 并且没有提示进行身份验证。如果我通过 Visual Studio 添加 Web 引用,我会收到不接受我的凭据的密码提示。我也尝试过使用以下代码在代码中进行身份验证,但都不起作用。服务器上都启用了 Windows 身份验证和匿名身份验证。
CrmService svc = new CrmService();
// this doesn't work
svc.UseDefaultCredentials = true;
// this doesn't work either
svc.Credentials = new NetworkCredential("myuser", "password", "mydomain");
svc.Credentials= System.Net.CredentialCache.DefaultCredentials;
ExportAllXmlRequest request = new ExportAllXmlRequest();
ExportAllXmlResponse response = (ExportAllXmlResponse)svc.Execute(request);
string resp=string.Empty;
using (StreamReader reader = new StreamReader(response.ExportXml)) {
resp = reader.ReadToEnd();
}
return resp;
是否有 1) 一种从 CRM 中列出联系人的更简单方法和 2) 我可以采取哪些措施来解决此身份验证问题。