Мне было приятно узнать, что клиентская объектная модель Sharepoint 2010 по существу оборачивает удаленные вызовы на сервер.Итак, я скопировал Microsoft.Sharepoint.Client.Silverlight.dll и Microsoft.Sharepoint.Client.Silverlight.Runtime.dll с моего сервера Sharepoint 2010 на мою машину для разработки (без Sharepoint).Я предполагал, что код Silverlight, который я тестировал на сервере Sharepoint 2010, также будет работать на моей машине для разработки.Естественно, я не использую ApplicationContext.Current.Url, потому что я не выполняю в Sharepoint, поэтому я вручную добавляю имя сервера sharepoint следующим образом (сохраняется анонимным для сообщения):
//ClientContext context = new ClientContext(ApplicationContext.Current.Url);
ClientContext context = new ClientContext("https://[servername]");
_web = context.Web;
context.Load(_web);
context.Load(_web.Lists);
context.ExecuteQueryAsync(new ClientRequestSucceededEventHandler (OnRequestSucceeded), new ClientRequestFailedEventHandler(OnRequestFailed));
КогдаЯ выполняю код, мне предлагается окно проверки подлинности Windows (Sharepoint настроен на использование проверки подлинности Windows), я добавляю свой домен / пользователя и пароль.Однако я получаю следующую ошибку:
Примечание. Мне удалось заставить работать веб-службы Sharepoint 2010 при аналогичной ошибке, изменив режим безопасности привязки = «Transport» и включив файл clientAccessPolicy.xml в файлКорневой сайт Sharepoint.Нужно ли настраивать другой каталог Sharepoint для конечной точки клиентской объектной модели?
- Exception {System.Security.SecurityException ---> System.Security.SecurityException: ошибка безопасности.в System.Net.Browser.BrowserHttpWebRequest.InternalEndGetResponse (IAsyncResult asyncResult) в System.Net.Browser.BrowserHttpWebRequest. <> c__DisplayClass5.b__4 (объект sendState) в System.Net.Browser.Async______0).--- Конец внутренней трассировки стека исключений --- в System.Net.Browser.AsyncHelper.BeginOnUI (SendOrPostCallback beginMethod, состояние объекта) в System.Net.Browser.BrowserHttpWebRequest.EndGetResponse (IAsyncResult asyncResult) в Microsoft.SharePoint.ClientRequest.ExecuteQueryGetResponseAsyncCallback (IAsyncResult asyncResult)} System.Exception {System.Security.SecurityException}