- 在项目中加入一个targets文件,取名my.build.targets
- 在targets文件中加入内容:
<?xml version="1.0" encoding="utf-8" ?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<CityIndexJS Include="js/src/cityIndex/_*.js;js/src/cityIndex/i*.js;js/src/cityIndex/page.js;js/src/cityIndex/ready.js;" />
</ItemGroup>
<Target Name="BuildJS" Condition="'$(Configuration)' == 'Release'">
<Message Text="Building javascript files…… haha"></Message>
<Packer OutputFileName="js\cityindex.js" Mode="JSMin" InputFiles="@(CityIndexJS)" Verbose="true" />
</Target>
<PropertyGroup>
<WebConfigPath>$(SampleFilesDir)\Web.config</WebConfigPath>
</PropertyGroup>
<Target Name="UpdateReleaseWebConfig" Condition="'$(Configuration)' == 'Release'">
<Message Text="Updating web config…… haha"></Message>
<UpdateWebConfig
WebConfigPath="web.config"
Debug="false"
CustomErrorsMode="Remote"/>
</Target>
</Project>
- 将SmallSharp文件拷到一个目录中,比如MyLib.dll\msbuild\smallsharp 下载地址
- unload project , 并编辑项目文件
- 在项目文件的顶部加入
<Import Project="..\文档\MSBuild\SmallSharp\MSBuild.Packer.Targets" />
<Import Project="js.build.targets" />
在项目文件底部加入
<Target Name="AfterBuild">
<CallTarget Targets="UpdateReleaseWebConfig" />
<CallTarget Targets="BuildJS" />
</Target>
- 使用msbuild执行,因为这里使用了Configuration=release的模式,所以需要指定参数
msbuild my.csproj /p:Configuration=release
这个vs中直接编译不会执行压缩,只有通过msbuild才会执行
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)