• C#项目的生成事件及批处理文件


    一个C#项目,如果为同一个解决方案的其他项目所引用,则其编译后,会将DLL拷贝到引用项目中;但如果它并不被其他项目引用,但又想编译后能够自动将生成的东西拷贝过去,可以在项目的生成事件中,写上一些批处理命令,拷贝指定的内容。

    项目的生成事件,可以右击项目,弹出菜单中选属性,即可见到。

    下面是一个批处理示例:

    SET Area=Test
    SET SolutionDir=D:svn	runkCodeSolution
    SET ProjectName=SubWeb
    
    set PluginDirectory="%SolutionDir%WebPlugins\%Area%"
    set PluginViewDirectory="%SolutionDir%WebPlugins\%Area%Views"
    set PluginBinDirectory="%SolutionDir%WebPlugins\%Area%in"
    set PluginContentDirectory="%SolutionDir%WebPlugins\%Area%Content"
    set PluginScirptsDirectory="%SolutionDir%WebPlugins\%Area%Scripts"
    set PluginWebConfig="%SolutionDir%WebPlugins\%Area%"
    set PluginTemplateDirectory="%SolutionDir%WebPlugins\%Area%Template"
    set PluginFunctionXmlFile="%SolutionDir%WebPlugins\%Area%"
    
    set ProjectViewDirectory="%SolutionDir%%ProjectName%Views"
    set ProjectBinDirectory="%SolutionDir%%ProjectName%in"
    set ProjectContentDirectory="%SolutionDir%%ProjectName%Content"
    set ProjectScirptsDirectory="%SolutionDir%%ProjectName%Scripts"
    set ProjectWebConfig="%SolutionDir%%ProjectName%Web.config"
    set ProjectTemplateDirectory="%SolutionDir%%ProjectName%Template"
    set ProjectFunctionXmlFile="%SolutionDir%%ProjectName%menu.xml"
    
    C:WindowsSystem32xcopy.exe /s /y %ProjectViewDirectory%*.cshtml %PluginViewDirectory%
    
    rem C:WindowsSystem32xcopy.exe /s /y %ProjectBinDirectory% %PluginBinDirectory%
    
    rem C:WindowsSystem32xcopy.exe /s /y %ProjectScirptsDirectory% %PluginScirptsDirectory%
    
    rem C:WindowsSystem32xcopy.exe /s /y %ProjectWebConfig% %PluginWebConfig%
    
    rem C:WindowsSystem32xcopy.exe /s /y %ProjectTemplateDirectory% %PluginTemplateDirectory%
    
    rem C:WindowsSystem32xcopy.exe /s /y %ProjectFunctionXmlFile% %PluginFunctionXmlFile%
    


    这样,每次这个项目编译的时候,之后就会触发这个事件。

    我们也可以将这些批处理命令写到一个批处理文件,然后在VS里添加一个指向该BAT的外部命令。这样在VS里就可以随时点击触发,方便得很。

    这种方法尤其适合只拷贝一些非DLL等无须编译的文件。

    添加外部命令的方法是在VS中,工具-外部工具,编辑好后,命令会自动出现在工具菜单中。


    版权声明:本文为博主原屙文章,喜欢你就担走。

  • 相关阅读:
    mongoDB 小练习
    pymongo 操作
    mongoDB 大文件存储方案, JS 支持展示
    mongoDB 固定集合
    mongoDB 聚合操作
    mongoDB 索引
    mongoDB 其他数据类型
    mongoDB 文档操作_删
    mongoDB 文档操作_改
    【探讨】linux环境,执行重启了php后php.ini依然不生效
  • 原文地址:https://www.cnblogs.com/leftfist/p/4764273.html
Copyright © 2020-2023  润新知