Quando coloco no modo Release não funciona o css, Mas se eu alterar para o modo Debug, ele funciona. Alguma ideia do que pode está faltando? Estou utilizando o VS 2017.
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Quando coloco no modo Release não funciona o css, Mas se eu alterar para o modo Debug, ele funciona. Alguma ideia do que pode está faltando? Estou utilizando o VS 2017.
Bom dia, Helenilson. Tudo bom?
Segui os passos desta atividade e não consegui reproduzir o erro.
Você poderia compartilhar seu código conosco? Como, por exemplo, subir um .zip no github e enviar o link aqui? Vou abrir seu projeto e verificar o que está acontecendo :)
Bom dia, Guilherme.
Eu não tenho Usuário no Git. Vou criar e te mandar. Assim que eu subir eu te posto o link. Valeu..
Tá ok, Helenilson :)
Sofri, mas acho que consegui.. rsrs.. verifica se tem tudo .. abraço.
Opa, deu tudo certo. Consegui rodar e ver o que acontece!
Vamos lá, o erro acontece, porque, no arquivo BundleConfig.cs, temos:
ScriptBundle estilos = new ScriptBundle("~/bundles/estilos");
estilos.Include("~/Content/bootstrap/css/bootstrap.css");
estilos.Include("~/Content/Style.css");
bundles.Add(estilos);
Perceba que você está usando um ScriptBundle para arquivos .css. O correto seria usar a classe StyleBundle:
StyleBundle estilos = new StyleBundle("~/bundles/estilos");
Mas, oras, por que funciona em DEBUG e não funciona em RELEASE?
Em debug, os Bundles não fazem nada! Apenas injetam as várias referências no documento de saída. Veja como é renderizado a tag head quando executado em debug:
<link href="/Content/bootstrap/css/bootstrap.css" rel="stylesheet"/>
<link href="/Content/Style.css" rel="stylesheet"/>
Enquanto que, em release, é renderizado desta forma:
<link href="/bundles/estilos?v=Uo8YwlJkbU4XsziwgOeH1HTFACwvX_9NfZL3SfQQSRo1" rel="stylesheet"/>
Mas, a requisição para /bundles/estilos?... retorna isto aqui para nós:
/* Minification failed. Returning unminified contents.
(9,4-5): run-time warning JS1195: Expected expression: .
(9,14-15): run-time warning JS1195: Expected expression: *
(9,80-81): run-time warning JS1004: Expected ';': :
(9,120-121): run-time warning JS1002: Syntax error: }
(9,141-142): run-time warning JS1004: Expected ';': a
(9,172-173): run-time warning JS1004: Expected ';': :
(9,234-235): run-time warning JS1197: Too many errors. The file might not be a JScript .NET file: {
*/
O que faz sentido, afinal, um minificador de Scripts não faz a menor ideia de como se minifica um CSS. Mas, como em debug nenhum bundler trabalha e apenas retorna as referências puras, esse é um erro que acontece apenas em release.
Tudo bem? Esclareci sua dúvida?
Abs e bons estudos :)
Sim.. Valeu abraço