2015-01-15 6 views
0

Я пытаюсь создать веб-сайт (веб-приложение) в Visual Studio 2012 для ввода данных в CRM 2015 в Интернете. Он продолжает говорить Metadata Contains A Reference That Cannot Be Resolved, когда программа пыталась позвонить OrgService. До этого я создаю форму окна для этого, она отлично работает. Он может подключаться к CRM 2015 онлайн и успешно создавать новую запись. Но когда я перемещаю код в веб-приложение. Я не работаю.Извлечь данные из Интернета из CRM 2015 онлайн

Код:

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); 
} 

Ошибка возникает при:

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

Есть ли кто-нибудь знает, что здесь происходит? Я ценю вашу помощь. Спасибо.

+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

Привет, Андрей. Мы просто поняли это. Это связано с тем, что у меня не было доступа к отправке запроса на CRM онлайн с сервера. Для этого нужен доступ администратора. Теперь мы хорошие. Исходный код всегда работает. Большое спасибо. Ценю вашу помощь. – Simeng