Когда я хочу попасть в Интернет, мне обычно приходится делать код, похожий на следующий, который достаточно понятен себе.
using (SPSite site = new SPSite(siteUrl))
{
SPWeb web = null;
if (string.IsNullOrEmpty(webName))
web = site.RootWeb;
else
web = site.AllWebs[webName];
...
web.Close();
}
Учитывая URL-адрес, который указывает прямо на веб-сайт:
Итак, в этом случае siteUrl будет: http://localhost/sites/testsite
и webName: testWeb
Я хотел бы просто получить один бит информации от пользователя, противоположного этим двум отдельным битам, то есть URL-адрес непосредственно в Интернете: http://localhost/sites/testsite/testweb/
Я хотел бы использовать этот URL-адрес, чтобы открыть веб-сайт и не указывать его вручную. Я играл с site.OpenWeb и пробовал передавать URL-адрес, но это не нравится. Он хочет только относительный URL-адрес сервера. Есть ли способ получить только один URL-адрес от пользователя, чтобы открыть веб-сайт, не дотягивая URL-адрес и делая предположения, что последний бит может или не может быть именем сети в зависимости от того, будем ли мы перейдя в корневую сеть или нет, но затем это делает код еще хуже.