Неправильный SPContext в Wcf Service
У меня есть SharePoint 2010 (_http://sp2010/, например). Я создал сайт (_http://sp2010/site/) и службу WCF, которая находится в папке ISAPI. В сервисе у меня есть такой метод испытаний:
[OperationContract]
public string GetCurrentWebUrl()
{
return SPContext.Current.Site.Url + " | " + SPContext.Current.Web.Url;
}
Я вызываю сервис из моего консольного приложения по этому адресу - _sphttp://sp2010/site/_vti_bin/WcfService.svc/mex. При вызове метода GetCurrentWebUrl я ожидаю получить _http://sp2010/site/, но всегда получаю _http: // sp2010 /. Другими словами, SPContext не является правильным.
Что я делаю неправильно? Как я могу получить правильный контекст?
1 ответ
Можете ли вы проверить, действительно ли вы звоните http://sp2010/site/_vti_bin/WcfService.svc/mex
? При использовании диалогового окна "Добавить ссылку на службу Visual Studio" обычно используется корень, как в http://sp2010/_vti_bin/WcfService.svc/mex
,
Если вы настраиваете его в коде, он действительно должен работать, по крайней мере, для меня:(
Что такое SPContext.Current.Web.Url
а также Web.ID
? Это соответствует / сайт / Интернет?