/ / Como renderizar um script em um layout mestre - javascript, razor, asp.net-core-mvc, layout-page

Como faço para renderizar um script em um layout mestre - javascript, razor, asp.net-core-mvc, layout-page

Eu tenho 2 páginas de layout, um é um layout mestre. Isso tem um layout básico que todas as minhas páginas usarão se um usuário estiver conectado ou não. O outro é o que chamei de layout autorizado, que é uma exibição de layout para usuários que estão conectados ao aplicativo. a exibição do layout autorizado é renderizada no corpo do layout mestre e todas as minhas páginas que exigem que os usuários façam login são renderizadas no corpo do layout autorizado.

Agora minha pergunta é como eu uso o renderseção do layout Mestre no layout filho, como a Página inicial (para usuário conectado), não estou conseguindo agora porque o layout Mestre não é um mestre direto das visualizações filho, é um mestre do layout Autorizado qual é o layout da exibição filho.

A propósito, tudo isso está no .NET CORE.

Respostas:

0 para resposta № 1

Você está procurando algo nesse sentido:

// Master.cshtml
@RenderBody()

// AuthorizedLayout.cshtml
@{
Layout = "Master";
}
@RenderBody()

// AuthorizedPage.cshtml
@{
Layout = "AuthorizedLayout";
}

...


0 para resposta № 2

Eu não acho que você possa ter um layout renderizado dentro de um layout. Mas uma abordagem alternativa que pode funcionar bem para você é a seguinte:

Crie dois layouts, um paravisitantes não autorizados e um para visitantes autorizados. Para todos os aspectos dos dois layouts iguais, crie componentes de exibição. Em seguida, use esses componentes de exibição nos dois layouts. Dessa forma, todo o html e lógica comuns estão em apenas um lugar.

Em seguida, você pode selecionar o layout adequado a ser usado para a exibição, com base na autenticação ou não do visitante.

Eu uso uma abordagem muito semelhante para o trabalho do meu site.