尝试为Dynamics CRM 2011 Online编写plugin。
第一步是使用CrmSvcUtil生成实体类的代码。
我认为我已经正确设置了CrmSvcUtil参数(请参见下文),但是当我运行它时,我得到了:
启用跟踪(通过CrmSvcUtil.exe.config)会显示此错误:
这是有道理的,因为我所在的网络具有代理服务器,该代理服务器需要我的网络用户名/密码才能访问Internet。自然,此用户名/密码与Dynamics CRM的用户名/密码不同。
因此,如何使CrmSvcUtil将正确的用户名/密码传递给代理?
这是我与CrmSvcUtil一起使用的配置文件:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="url" value="https://myorg.crm.dynamics.com/XRMServices/2011/Organization.svc"/>
<add key="codeCustomization" value="Microsoft.Xrm.Client.CodeGeneration.CodeCustomization, Microsoft.Xrm.Client.CodeGeneration"/>
<add key="out" value="XRM\Xrm.cs"/>
<add key="namespace" value="Xrm"/>
<add key="username" value="[email protected]"/>
<add key="password" value="mydynamicspassword"/>
<add key="deviceid" value="my device ID"/>
<add key="devicepassword" value="my device password"/>
<add key="servicecontextname" value="XrmServiceContext" />
<add key="servicecontextprefix" value="Xrm" />
</appSettings>
<system.diagnostics>
<trace autoflush="false" indentsize="4">
<listeners>
<add name="configConsoleListener"
type="System.Diagnostics.ConsoleTraceListener">
<filter type="System.Diagnostics.EventTypeFilter"
initializeData="Error" />
</add>
</listeners>
</trace>
</system.diagnostics>
</configuration>
最佳答案
啊哈!我想我破解了。
我将以下内容添加到CrmSvcUtil.exe.config文件中:
<system.net>
<defaultProxy useDefaultCredentials="true">
<proxy proxyaddress="http://proxyaddress:port" />
</defaultProxy>
</system.net>
我不再收到“代理身份验证”错误。
(我遇到了一个不同的错误,但是它与缺少程序集有关,所以我想我可能可以找出....)