2011-04-28 93 views
0

我将LESS引入到现有的ASP.NET Web表单应用程序中。为了让智能感知工作,我决定设置LessCssHttpHandler来拦截对.less.css结尾的文件的请求。这样,Visual Studio仍然认为我们正在处理一个CSS文件。我这样做是通过添加以下行到我的web.config文件:.LESS文件上的智能感知

<add type="dotless.Core.LessCssHttpHandler, dotless.Core" 
    validate="false" path="*.less.css" verb="*" /> 

为了得到这个工作,我不得不调整我的IIS设置,以便.css文件会由ASP.NET框架处理。不幸的是,通过这样做,现在我现有的.css文件(由于没有在.less.css中结束,因此没有由无点HTTP处理程序处理)没有返回任何内容。这很有意义,因为ASP.NET框架在看到带有该扩展名的文件时并不知道该怎么做。

是否有某种基本的HTTP处理程序,我可以设置除了我上面处理正常的.css文件?喜欢的东西:

<add verb="*" path="*.css" type="insert some base HTTP handler here that will simply return the contents of the file" /> 

回答

4

看起来像StaticFileHandler是我正在寻找。这就是我们如何将其添加到web.config中的httpHandlers节点的方式:

<add verb="*" path="*.less.css" validate="false" type="dotless.Core.LessCssHttpHandler, dotless.Core, Version=1.1.0.7, Culture=neutral, PublicKeyToken=96B446C9E63EAE34, processorArchitecture=MSIL" /> 
<add verb="*" path="*.css" type="System.Web.StaticFileHandler" /> 
3

我们使用Chirpy对我们的支持较少(以及我们的谷歌关闭编译器支持)。它允许您为LESS配置文件扩展名,例如.less.css,然后您可以拥有Intellisense支持。

它不会在运行时进行翻译,而是在Visual Studio中的设计时进行翻译。当您编辑并保存LESS文件时,Chirpy会启动并处理生成css文件的LESS文件。这样我们可以避免将css文件传递给ASP.NET。

+0

您是如何获得Intellisense工作的?我也使用Chirpy,但似乎它只是一个普通的CSS编辑器,不识别LESS语法? – jamiebarrow 2011-08-02 12:28:19

+0

@jamiebarrow我没有得到LESS语法支持,只有CSS语法支持。如果你找到方法,请LMK。 – 2011-08-04 01:06:04

+0

好吧,我误解了:)谢谢你清理。看过但没有发现任何东西。 IIRC的Chirpy插件可能会提供它作为一点?希望如此 :) – jamiebarrow 2011-08-04 07:45:58

0

我倾向于使用控制台编译器并将较少的文件重命名为.css httphandler通常只适用于需要CSS中参数的人。