2015-01-15 4 views
0

Visual Studio 2012에서 (웹 응용 프로그램)에서 웹을 만들어 데이터를 온라인으로 CRM 2015에 푸시하려고합니다. 프로그램이 OrgService에 전화를 걸 때 Metadata Contains A Reference That Cannot Be Resolved을 계속 말합니다. 그 전에, 나는 이렇게하기 위해 윈도우 폼을 생성한다. CRM 2015 온라인에 연결하여 새로운 엔티티 레코드를 성공적으로 생성 할 수 있습니다. 하지만 코드를 웹 애플리케이션으로 옮길 때. 나는 일하지 않는다.웹에서 데이터를 CRM 2015 온라인으로 푸시

코드 :

OrganizationServiceProxy proxy = new OrganizationServiceProxy(serviceUri, null, cre, null); 

여기에 무슨 일이 아는 사람인가 :

private void button1_Click(object sender, EventArgs e) 
{ 

    ClientCredentials cre = new ClientCredentials(); 
    cre.UserName.UserName = "MyEmailAddress"; 
    cre.UserName.Password = "Password"; 

    Uri serviceUri = new Uri("https://QA.crm.dynamics.com/XRMServices/2011/Organization.svc"); 

    OrganizationServiceProxy proxy = new OrganizationServiceProxy(serviceUri, null, cre, null);//Error occurs here!!!!!! 
    proxy.EnableProxyTypes(); 
    IOrganizationService service = (IOrganizationService)proxy; 
    Entity contact = new Entity("contact"); 

    contact["firstname"] = Convert.ToString(firstname.Text); 
    contact["lastname"] = Convert.ToString(lastname.Text); 
    contact["emailaddress1"] = Convert.ToString(email.Text); 
    contact["mobilephone"] = Convert.ToString(phone.Text); 
    proxy.Create(contact); 
} 

오류가 발생? 도와 주셔서 감사합니다. 감사합니다. .

+0

사용 코드를 입력하십시오. –

+0

방금 ​​코드를 업로드했습니다. 감사. – Simeng

+0

이상한 일은 지금 창 양식이 작동하지 않는다는 것입니다. 나는 아무 것도 만지지 않았다. 혼란스러워. 당신의 도움에 감사드립니다. – Simeng

답변

0

는 서비스 프록시의 초기화를 위해 다음 코드를 사용해보십시오 :

IServiceManagement<IOrganizationService> orgServiceManagement = 
ServiceConfigurationFactory.CreateManagement<IOrganizationService>(new Uri("https://democrm.api.crm5.dynamics.com/XRMServices/2011/Organization.svc")); 

AuthenticationCredentials authCredentials = new AuthenticationCredentials(); 
authCredentials.ClientCredentials.UserName.UserName = _userName; 
authCredentials.ClientCredentials.UserName.Password = _password; 
AuthenticationCredentials tokenCredentials = orgServiceManagement.Authenticate(authCredentials); 

IOrganizationService organizationProxy = new OrganizationServiceProxy(orgServiceManagement, tokenCredentials.SecurityTokenResponse); 
+0

안녕하세요, Andrii. 우린 방금 알아 냈어. 이는 서버에서 CRM 온라인 요청을 보낼 수있는 권한이 없었기 때문입니다. 관리자 권한이 필요합니다. 이제 우리는 좋다. 원래 코드는 항상 작동합니다. 고맙습니다. 당신의 도움을 주셔서 감사합니다. – Simeng