System.Security.SecurityException при вызове веб-службы SharePoint (_vti_bin / Lists.asmx) из формы InfoPath (VSTA) - PullRequest
3 голосов
/ 13 сентября 2011

Я вызвал исключение при вызове метода веб-службы GetListItems(...).Я использую Инструменты Visual Studio для приложений, так как я настраиваю форму InfoPath.Это создает код .NET 2.0.

Я сижу на своем главном компьютере и запрашиваю SharePoint WFE.Это хорошо работало до того, как я переключился с InfoPath 2010 и InfoPath 2007. После того, как я переключился на InfoPath 2007, VSTA был переустановлен, возможно, это вызвало некоторые странные проблемы.Кто-нибудь получил представление о том, как решить эту проблему?

Я изменил как мой локальный web.config для .net 2.0, так и мою конфигурацию .net Framework 2.0 для полного доверия к строгому имени моего приложения.1006 *

Любые советы?

Полная трассировка стека:

System.Security.SecurityException was unhandled by user code
  Message="Request for the permission of type 'System.Net.WebPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed."
  Source="mscorlib"
  StackTrace:
       at System.Security.CodeAccessSecurityEngine.Check(Object demand, StackCrawlMark& stackMark, Boolean isPermSet)
       at System.Security.CodeAccessPermission.Demand()
       at System.Net.HttpWebRequest..ctor(Uri uri, ServicePoint servicePoint)
       at System.Net.HttpRequestCreator.Create(Uri Uri)
       at System.Net.WebRequest.Create(Uri requestUri, Boolean useUriBase)
       at System.Net.WebRequest.Create(Uri requestUri)
       at System.Web.Services.Protocols.WebClientProtocol.GetWebRequest(Uri uri)
       at System.Web.Services.Protocols.HttpWebClientProtocol.GetWebRequest(Uri uri)
       at System.Web.Services.Protocols.SoapHttpClientProtocol.GetWebRequest(Uri uri)
       at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
       at Sjekkliste2.SharePointLists.Lists.GetListItems(String listName, String viewName, XmlNode query, XmlNode viewFields, String rowLimit, XmlNode queryOptions, String webID)
       at Sjekkliste2.FormCode.EnhetExists(String lokasjon)
       at Sjekkliste2.FormCode.ddLokasjon_Validating(Object sender, XmlValidatingEventArgs e)
       at Microsoft.Office.InfoPath.Internal.XmlEventHost.GenericProxy(Object genericDelegate, DataDOMEvent dataDOMEvent, InfoPathEvents type)
       at Microsoft.Office.InfoPath.Internal.XmlEventHost.ValidatingProxy(DataDOMEvent dataDOMEvent)
       at Microsoft.Office.Interop.InfoPath.SemiTrust._DataDOMEventSink_SinkHelper.OnValidate(DataDOMEvent pDataDOMEvent)

1 Ответ

0 голосов
/ 14 сентября 2011

Согласно трассировке стека, ваше приложение не имеет WebPermission во время выполнения кода. Это может быть вызвано тем, что ваш код не настроен как полное доверие на вашем хост-сайте (и да, это может быть вызвано новой установкой).

Проверьте настройки безопасности для своего кода на хосте - ваш код не может создавать веб-запросы сейчас.

...