2014-12-10 3 views
7

.less 파일을 CSS로 컴파일하는 ASP.Net MVC 애플리케이션이 있습니다. 특정 시나리오에서는 내 엔드 포인트. 쿼리 문자열을 제공 할 때 컴파일 오류가 발생합니다.

HTTP를 치면 : /// 계정/ResetPassword t = eyJ0eXAiOiJKV1Qi ... .less 컴파일 경고에

쿼리 문자열 결과

directive block with unrecognised format on line 1 in file '~/Content/packageForm.less': []: /beginning of file [1]: @t: eyJ0eXAiOiJKV1Qi...; 
^ [2]: @import "setup.less"; directive block with unrecognised format on line 1 in file '~/Content/packageForm.less': []: /beginning of file [1]: @t: eyJ0eXAiOiJKV1Qi...; 
^ [2]: @import "setup.less"; directive block with unrecognised format on line 1 in file '~/Content/IE.less': []: /beginning of file [1]: @t: eyJ0eXAiOiJKV1Qi...; 
^ [2]: #notes{ directive block with unrecognised format on line 1 in file '~/Content/IE.less': []: /beginning of file [1]: @t: eyJ0eXAiOiJKV1Qi...; 
^ [2]: #notes{ 
?

쿼리 문자열 매개 변수 't'를 제거하면 컴파일 오류가 발생하지 않습니다.

해결책이있는 사람이 있습니까?

감사합니다.

폴.

+0

컴파일 된 CSS (예 : CSS)가 제공되는 엔드 포인트가 제공됩니까? –

+0

엔드 포인트는 HTML을 제공합니다. 즉, HTML을 제공하는 MVC 작업입니다. 컴파일 또는 재배포 후에 응용 프로그램에 처음으로 충돌하는 경우 (응용 프로그램이 JIT 컴파일이므로) 위의 상황이 발생합니다. 이것은 .less가 컴파일 될 때입니다. JITing 후이 끝점에 대한 후속 호출은 .less가 컴파일 되었기 때문에 아무런 문제가 발생하지 않습니다. –

+0

@ PaulHoulston이 문제도 발생합니다. 어떻게 해결했는지 알아 냈어? – amp

답변

5

이 문제는 dotless WebOptimization Adapter의 버그로 인해 발생합니다.

이 문제를 추가하십시오를 해결하려면 disableParameters = 아래 그림과 같이 당신의 Web.config에서 구성 섹션을 점이없는 "true"로 : 난 그냥에 dotlessdotless adapterfor System.Web.Optimization를 업데이트하여 문제를 해결

<dotless minifyCss="false" cache="true" web="true" disableParameters="true" /> 
+0

사실,이 솔루션을 적용하면 문제를 해결하는 것 같습니다. 그러나 미래에 다른 점이없는 매개 변수를 사용하고 싶기 때문에 다른 해결책이 있는지 알고 싶습니다. 대체 해결책이 있습니까? – amp

4

자신의 마지막으로 사용 가능한 버전 :

  • dotless : 새 버전 1.5.0
  • dotless adapterfor System.Web.Optimization : 새로운이 문제에 대한 역사를 들어 버전 1.3.3

, 해상도, 그것을 고정 GitHub의 문제 "Empty CSS generation at startup"와 the related pull request를 참조하십시오.

+1

이것은 실제로 점이없는 1.4.3 이상에서 수정되어야합니다. – Rytmis

관련 문제