我已经设置了我的帖子构建配置,如http://www.asp.net/ajaxlibrary/ajaxminquickstart.ashx
所示我收到以下错误:
“AjaxMin”任务不支持“JsSourceFiles”参数。 验证任务上是否存在参数,它是可设置的公共实例属性。
我的配置设置......
<Import Project="$(MSBuildExtensionsPath)\Microsoft\MicrosoftAjax\ajaxmin.tasks" />
<Target Name="AfterBuild">
<ItemGroup>
<JS Include="**\*.js" Exclude="**\*.min.js" />
</ItemGroup>
<ItemGroup>
<CSS Include="**\*.css" Exclude="**\*.min.css" />
</ItemGroup>
<AjaxMin
JsSourceFiles="@(JS)" JsSourceExtensionPattern="\.js$" JsTargetExtension=".min.js"
CssSourceFiles="@(CSS)" CssSourceExtensionPattern="\.css$" CssTargetExtension=".min.css" />
</Target>
我看了一下带反射器的AjaxMinTask.dll,并注意到公开的属性与我的配置中的属性不匹配。有一个名为ITaskItem
的{{1}}数组,但我编辑了我的配置以匹配。
SourceFiles
我现在收到错误:
“AjaxMin”任务不支持“SourceFiles”参数。 验证任务上是否存在参数,它是可设置的公共实例属性。
我现在正在挠头。当然它应该比这更容易吗?
我在Windows 7 64位安装上运行Visual Studio 2010 Ultimate。
答案 0 :(得分:1)
我不建议在AfterBuild期间缩小。许多构建系统假设源代码在执行构建时是只读的和/或不变的,并且包括.min.js文件。
相反,您可以挂钩“CopyWebApplication”目标和Visual Studio 2010的网站部署引擎(WPP / Web Publishing Pipeline)来完成同样的事情,而不需要.min.js文件。
看看我对这个问题的回答: Concatenate and minify JavaScript on the fly OR at build time - ASP.NET MVC
但是,要直接回答您的问题,“SourceFiles”属性不再存在。一些较旧的博客文章未更新,现在有旧信息。尝试在属性前放置“Js” - 即/ JsSourceFiles =“@(JS)”。
最新版本 - http://ajaxmin.codeplex.com/