Ошибка:Не удалось найти веб-приложение по адресу http://[URL to SharePoint]/?
-
16-10-2019 - |
Вопрос
Я погуглил, но не смог найти правильный ответ на эту проблему.Ниже приведен мой код, который я использовал на своем сервере разработки.Пожалуйста, подскажите мне точное решение, связанное с этой проблемой:
Не удалось найти веб-приложение по адресу [URL] .Убедитесь, что вы правильно ввели URL-адрес.Если URL-адрес должен обслуживать существующий контент, системному администратору может потребоваться добавить новое сопоставление URL-адреса запроса с предполагаемым приложением.
using (SPSite _Site = new SPSite("http://demo2010a:8082/sites/Test2"))
{
using (SPWeb _Web = _Site.OpenWeb())
{
foreach (SPList list in _Web.Lists)
{
if (count <= 4)
{
string listLink = "<a href='" + list.DefaultView.Url.ToString() + "'>" + list.Title + "</a>(<b>" + list.Items.Count + "</b>)<br>";
linksHtml += listLink;
}
count++;
}
}
}
Решение
Вы строите против x64 и против 3,5 структуры?
С уважением,
Kjetil Hovding Crayon, Осло
Другие советы
Меня задела та же проблема, и я обнаружил, что это опция сборки, целевая платформа в моих свойствах VS project была установлена на x86.Изменен на любой процессор или x64, чтобы решить проблему.
Как выполняется ваш код? Веб -части? Особенность? CLI?
Есть ли другой способ открыть коллекцию сайтов, такой как контекст?
Если нет, то сначала вы пытались открыть коллекцию сайтов Root, а затем попробуйте коллекцию сайтов Test2?
Пожалуйста, проверьте альтернативные сопоставления доступа в администрации Cenztral. URL должен быть настроен. Возможно, вы создали приложение с заголовком хоста, а AAM - это не то, что вы используете в своем коде. Если вы укротили Manualy SharePoint на сайте IIS «может», похоже, работает правильно, но если AAM не настроен, он как-то работает :-)
Так что проверьте свой AAM и посмотрите, если http: // demo2010a: 8082 здесь. FQDN - это что -то другое ... и т. Д. Это должно соответствовать. Нет SSL и т. Д. Точное совпадение :-)
Использование объектной модели, по -видимому, использует URL для доступа к нему через HTTP, но все, что он делает, - это сделать SQL -запрос в базу данных, чтобы увидеть, является ли хост часть вашего URL -адреса действительной записью AAM.
Ciao Marco
Ссылка AAM: http: // <> /_админ/alternateurlcollections.aspx
PowerShell тестовый код:[System.reflection.Assembly]::LoadWithPartialName(“Microsoft.SharePoint”)
$site = new-object Microsoft.SharePoint.SPSite("http://demo2010a:8082/sites/Test2")