2011-03-31 41 views
0

我希望能够使用C#或VB.Net应用程序使用CRM 2011 SDK(Microsoft.Xrm.Sdk.Deployment命名空间)使用部署服务(Deployment.Svc)启用/禁用CRM 2011组织。如何使用C#/ VB.Net和WCF部署服务或CRM 2011 SDK启用和禁用CRM 2011组织?

我使用一些像这样的代码:

Dim StateReq As CRM2011DeploymentSvc.DeleteRequest 
       Dim StateResp As CRM2011DeploymentSvc.DeleteResponse 

       StateReq.EntityType = DeploymentEntityType.Organization 
       StateReq.InstanceTag.Id = FoundOrganization.OrganizationId 
       StateReq.InstanceTag.Name = FoundOrganization.UniqueName 


       StateResp = CType(_CrmDeployService.Execute(StateReq), DeleteResponse) 

Q1:此代码是OK,只要实体的缺失(组织,账户等)的关注。但我更感兴趣启用和禁用组织(偶尔)一起删除(当需要时)。问题2:让我说如果我删除一个组织,我是否能够撤消删除或恢复该组织。如果是,那么如何以及如果不是其他选择是什么? Q3:在CRM 4.0,我们可以禁用/使用使用部署Web服务

**SetStateOrganizationRequest** 



**SetStateOrganizationResponse** 

类启用组织,但CRM 2011年,部署WCF服务不包含任何这样的方法。我应该怎么做启用或禁用组织

回复非常感谢。

谢谢。

回答

0

确定我得到了ResultOnDemand

下面的代码解决方案提供者为我工作

EntityInstanceId i = new EntityInstanceId(); 
i.Id = OrganisationId; //Organisation Id 

DeploymentService.Organization organization = (DeploymentService.Organization)Provider.deploymentservice.Retrieve(DeploymentEntityType.Organization, i); 

//Update status to disabled 
organization.State = OrganizationState.Disabled; 

DeploymentService.UpdateRequest updateRequest = new UpdateRequest(); 
updateRequest.Entity = organization; 

//update status 
Provider.deploymentservice.Execute(updateRequest);