CRM创建了CrmConnection的新实例

时间:2012-06-20 15:44:36

标签: c# .net wcf dynamics-crm-2011

我是Dynamic CRM 2011的最新消息,所以也许这个问题非常简单 我正在连接将WCF服务发送到不同的 CRM实例,这部分代码:

 var settings = new ConnectionStringSettings("Xrm", connectionString);

 var connection = new CrmConnection(settings);

 using (var xrm = new XrmServiceContext(connection))
 {
    //do the magic here
 }

“connectionString”参数是包含CRM连接字符串的字符串。

所以,问题是它第一次连接到我在connectionString中编写的服务器,但是,它总是连接到同一台服务器,我的意思是,即使我更改服务器地址,也总是试图连接到第一个。

调试,我查看

var connection = new CrmConnection(settings);

并且始终与第一台服务器的连接相同....

所以,我需要一种方法来处理该连接,或强制构造函数始终创建一个新实例......或类似的东西...... 但我找不到那种方法或操作......

提前致谢!

2 个答案:

答案 0 :(得分:3)

好的,我找到了一个解决方案,我不知道它是否是最佳解决方案,但它确实有效...... 而不是使用这个

var settings = new ConnectionStringSettings("Xrm", connectionString);
var connection = new CrmConnection(settings);

我用

var connection = CrmConnection.Parse(connectionString);

这给了我相同的结果,并且始终使用正确的连接字符串

答案 1 :(得分:1)

这里的根本问题是为每个ConnectionStringSettings缓存了一些属性。您可以通过为每个实例使用唯一名称来避免这种情况(例如:Xrm1,Xrm2等)。我不确定SDK中是否明确记录了这种行为,但我确实遇到过并按照我的说明修复了它。