Cuando quiero acceder a una web, generalmente tengo que hacer un código como el siguiente, que es bastante auto explicativo.Abrir un SPWeb desde una sola Url
using (SPSite site = new SPSite(siteUrl))
{
SPWeb web = null;
if (string.IsNullOrEmpty(webName))
web = site.RootWeb;
else
web = site.AllWebs[webName];
...
web.Close();
}
se proporciona una URL que apunta directamente a una web:
Así que en este caso sería siteUrl: http://localhost/sites/testsite
y webname sería: testweb
me gustaría conseguir simplemente un solo bit de información del usuario que se opone a estos dos bits separados, es decir, la url directamente a la web: http://localhost/sites/testsite/testweb/
Me gustaría utilizar esta url para abrir la web y no tener que especificar el nombre web manualmente. He jugado con site.OpenWeb e intenté pasar la URL a esto también, pero no me gusta. Solo quiere una URL relativa al servidor. ¿Existe alguna manera de que el usuario pueda obtener una url única para abrir la web, salvo extraer la url y suponer que el último bit puede ser o no el nombre de la web, dependiendo de si vamos a la web raíz o no, pero eso empeora el código.
Qué cosa tan estúpida para que yo no sé.Lo dice ahí mismo en la documentación. Tenía en mente que el constructor predeterminado abría la web raíz. Debe haber sido información errónea en algún momento. Bien, gracias por aclararme esto. –
No, problema. De nada. – Flo
@Flo, excelente, nunca me di cuenta de que esto existía específicamente para abrir el SPWeb asociado con la URL del constructor de SPSite. Aclamaciones. –