Master Page dinamica

22/10/2009 - 16:00 por Bea | Informe spam
Hola, buenas tardes a tod@s.

Estoy intentado hacer que cuando se entre en sharepoint compruebe el usuario
que se loguea y dependiendo de que sociedad o sede pertenece me carga una
master page u otra. El código esta hecho con un httpmodule y bueno le agregue
al webconfig en la seccion httpmodules pero funciona bastante mal, si
refrescas la pagina dando a F5 va cargando una pagina maestra u otra
aleatoriamente. Yo pienso que es algo de los demas encabezados que tiene el
webconfig de Sharepoint. El webconfig le tengo asi:

<httpModules>
<clear/>
<add name="SPRequest"
type="Microsoft.SharePoint.ApplicationRuntime.SPRequestModule,
Microsoft.SharePoint, Version.0.0.0, Culture=neutral,
PublicKeyTokenqe9bce111e9429c" />
<add name="OutputCache" type="System.Web.Caching.OutputCacheModule" />
<add name="FormsAuthentication"
type="System.Web.Security.FormsAuthenticationModule" />
<add name="UrlAuthorization"
type="System.Web.Security.UrlAuthorizationModule" />
<add name="WindowsAuthentication"
type="System.Web.Security.WindowsAuthenticationModule" />
<add name="RoleManager" type="System.Web.Security.RoleManagerModule" />
<add name="PublishingHttpModule"
type="Microsoft.SharePoint.Publishing.PublishingHttpModule,
Microsoft.SharePoint.Publishing, Version.0.0.0, Culture=neutral,
PublicKeyTokenqe9bce111e9429c" />
<add name="Session" type="System.Web.SessionState.SessionStateModule" />
<add name="ModPrueba" type="Prueba.ModPrueba,ModuloPrueba"/>
</httpModules>

La ultima línea es mi httmodule que cambia la masterpage. Yo creo que el
tema está aqui en el webconfig, por que a lo mejor al hacer el <clear/> borra
toda la configuración... no sé, el caso es que no consigo que todo el rato me
cargue la masterpage que le corresponde a cada usuario...

Cualquier ayuda o sugerencia sería de gran ayuda

Gracias por adelantado

Preguntas similare

Leer las respuestas

#1 Hans Baumann
22/10/2009 - 17:33 | Informe spam
El clear no debería ser problema, en principio eso es - si no me equivoco -
cuando los web.config están anidados.

Creo que lo mejor que puedes hacer es tirar al event viewer el tipo de
usuario que está pillando y la master que va a mostrar, o si te salta alguna
excepción...

"Bea" escribió en el mensaje de noticias
news:
Hola, buenas tardes a

Estoy intentado hacer que cuando se entre en sharepoint compruebe el
usuario
que se loguea y dependiendo de que sociedad o sede pertenece me carga una
master page u otra. El código esta hecho con un httpmodule y bueno le
agregue
al webconfig en la seccion httpmodules pero funciona bastante mal, si
refrescas la pagina dando a F5 va cargando una pagina maestra u otra
aleatoriamente. Yo pienso que es algo de los demas encabezados que tiene
el
webconfig de Sharepoint. El webconfig le tengo asi:

<httpModules>
<clear/>
<add name="SPRequest"
type="Microsoft.SharePoint.ApplicationRuntime.SPRequestModule,
Microsoft.SharePoint, Version.0.0.0, Culture=neutral,
PublicKeyTokenqe9bce111e9429c" />
<add name="OutputCache" type="System.Web.Caching.OutputCacheModule"
/>
<add name="FormsAuthentication"
type="System.Web.Security.FormsAuthenticationModule" />
<add name="UrlAuthorization"
type="System.Web.Security.UrlAuthorizationModule" />
<add name="WindowsAuthentication"
type="System.Web.Security.WindowsAuthenticationModule" />
<add name="RoleManager" type="System.Web.Security.RoleManagerModule"
/>
<add name="PublishingHttpModule"
type="Microsoft.SharePoint.Publishing.PublishingHttpModule,
Microsoft.SharePoint.Publishing, Version.0.0.0, Culture=neutral,
PublicKeyTokenqe9bce111e9429c" />
<add name="Session" type="System.Web.SessionState.SessionStateModule"
/>
<add name="ModPrueba" type="Prueba.ModPrueba,ModuloPrueba"/>
</httpModules>

La ultima línea es mi httmodule que cambia la masterpage. Yo creo que el
tema está aqui en el webconfig, por que a lo mejor al hacer el <clear/>
borra
toda la configuración... no sé, el caso es que no consigo que todo el rato
me
cargue la masterpage que le corresponde a cada usuario...

Cualquier ayuda o sugerencia sería de gran ayuda

Gracias por adelantado
Respuesta Responder a este mensaje
#2 David Martos
24/10/2009 - 20:30 | Informe spam
Hola Bea,

yo consideraría la opción de usar un HttpModule para esto. Según lo que
endiendo estás aplicacando la página maestra a tu sitio en cada petición.
Así, si yo me identifico en el portal, tengo que hacer una modificación de
la página maestra (para todos los usuarios) y si entra otra persona hace lo
propio de manera concurrente. No creo que te sirva para lo que quieres
hacer. En función de lo que necesites, te podría valer simplemente con un
webcontrol en la masterpage que cargue un CSS según el usuario. Si, por lo
que sea, necesitas modificar toda la experiencia del usuario, te recomiendo
que uses variaciones y cambies la lógica del VariationRoot para que te lleve
a una variación o a otra en función del usuario.

Saludos,
David Martos
http://david-martos.blogspot.com


"Bea" wrote in message
news:
Hola, buenas tardes a

Estoy intentado hacer que cuando se entre en sharepoint compruebe el
usuario
que se loguea y dependiendo de que sociedad o sede pertenece me carga una
master page u otra. El código esta hecho con un httpmodule y bueno le
agregue
al webconfig en la seccion httpmodules pero funciona bastante mal, si
refrescas la pagina dando a F5 va cargando una pagina maestra u otra
aleatoriamente. Yo pienso que es algo de los demas encabezados que tiene
el
webconfig de Sharepoint. El webconfig le tengo asi:

<httpModules>
<clear/>
<add name="SPRequest"
type="Microsoft.SharePoint.ApplicationRuntime.SPRequestModule,
Microsoft.SharePoint, Version.0.0.0, Culture=neutral,
PublicKeyTokenqe9bce111e9429c" />
<add name="OutputCache" type="System.Web.Caching.OutputCacheModule"
/>
<add name="FormsAuthentication"
type="System.Web.Security.FormsAuthenticationModule" />
<add name="UrlAuthorization"
type="System.Web.Security.UrlAuthorizationModule" />
<add name="WindowsAuthentication"
type="System.Web.Security.WindowsAuthenticationModule" />
<add name="RoleManager" type="System.Web.Security.RoleManagerModule"
/>
<add name="PublishingHttpModule"
type="Microsoft.SharePoint.Publishing.PublishingHttpModule,
Microsoft.SharePoint.Publishing, Version.0.0.0, Culture=neutral,
PublicKeyTokenqe9bce111e9429c" />
<add name="Session" type="System.Web.SessionState.SessionStateModule"
/>
<add name="ModPrueba" type="Prueba.ModPrueba,ModuloPrueba"/>
</httpModules>

La ultima línea es mi httmodule que cambia la masterpage. Yo creo que el
tema está aqui en el webconfig, por que a lo mejor al hacer el <clear/>
borra
toda la configuración... no sé, el caso es que no consigo que todo el rato
me
cargue la masterpage que le corresponde a cada usuario...

Cualquier ayuda o sugerencia sería de gran ayuda

Gracias por adelantado
Respuesta Responder a este mensaje
#3 Bea
26/10/2009 - 08:52 | Informe spam
Muchisimas gracias le echaré un ojo.

Un saludo

"David Martos" wrote:

Hola Bea,

yo consideraría la opción de usar un HttpModule para esto. Según lo que
endiendo estás aplicacando la página maestra a tu sitio en cada petición.
Así, si yo me identifico en el portal, tengo que hacer una modificación de
la página maestra (para todos los usuarios) y si entra otra persona hace lo
propio de manera concurrente. No creo que te sirva para lo que quieres
hacer. En función de lo que necesites, te podría valer simplemente con un
webcontrol en la masterpage que cargue un CSS según el usuario. Si, por lo
que sea, necesitas modificar toda la experiencia del usuario, te recomiendo
que uses variaciones y cambies la lógica del VariationRoot para que te lleve
a una variación o a otra en función del usuario.

Saludos,
David Martos
http://david-martos.blogspot.com


"Bea" wrote in message
news:
> Hola, buenas tardes a
>
> Estoy intentado hacer que cuando se entre en sharepoint compruebe el
> usuario
> que se loguea y dependiendo de que sociedad o sede pertenece me carga una
> master page u otra. El código esta hecho con un httpmodule y bueno le
> agregue
> al webconfig en la seccion httpmodules pero funciona bastante mal, si
> refrescas la pagina dando a F5 va cargando una pagina maestra u otra
> aleatoriamente. Yo pienso que es algo de los demas encabezados que tiene
> el
> webconfig de Sharepoint. El webconfig le tengo asi:
>
> <httpModules>
> <clear/>
> <add name="SPRequest"
> type="Microsoft.SharePoint.ApplicationRuntime.SPRequestModule,
> Microsoft.SharePoint, Version.0.0.0, Culture=neutral,
> PublicKeyTokenqe9bce111e9429c" />
> <add name="OutputCache" type="System.Web.Caching.OutputCacheModule"
> />
> <add name="FormsAuthentication"
> type="System.Web.Security.FormsAuthenticationModule" />
> <add name="UrlAuthorization"
> type="System.Web.Security.UrlAuthorizationModule" />
> <add name="WindowsAuthentication"
> type="System.Web.Security.WindowsAuthenticationModule" />
> <add name="RoleManager" type="System.Web.Security.RoleManagerModule"
> />
> <add name="PublishingHttpModule"
> type="Microsoft.SharePoint.Publishing.PublishingHttpModule,
> Microsoft.SharePoint.Publishing, Version.0.0.0, Culture=neutral,
> PublicKeyTokenqe9bce111e9429c" />
> <add name="Session" type="System.Web.SessionState.SessionStateModule"
> />
> <add name="ModPrueba" type="Prueba.ModPrueba,ModuloPrueba"/>
> </httpModules>
>
> La ultima línea es mi httmodule que cambia la masterpage. Yo creo que el
> tema está aqui en el webconfig, por que a lo mejor al hacer el <clear/>
> borra
> toda la configuración... no sé, el caso es que no consigo que todo el rato
> me
> cargue la masterpage que le corresponde a cada usuario...
>
> Cualquier ayuda o sugerencia sería de gran ayuda
>
> Gracias por adelantado

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida