#使用技巧# # K3Cloud BOS 设计 C# 插件 自动拷贝插件到WebSite VS输出路径问题

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

#使用技巧# # K3Cloud BOS 设计  C# 插件 自动拷贝插件到WebSite VS输出路径问题

# K3Cloud BOS 设计 C# 插件 自动拷贝插件到WebSite,VS输出路径问题 # 1.场景 ![image.webp](/download/010043f3adfa42f342c29bceed56b24653ac.webp) > Visual Studio 生成-输出路径,一般有两种设置 > 1. 用BOS 启动IIS开发环境,一般设置输出路径 `\K3Cloud\bin` > 2. 使用IIS开发环境,设置输出路径 `D:\Program Files (x86)\Kingdee\K3Cloud\WebSite\bin` > 这两种方式,可以直接把 项目dll文件生成到指定目录下,一般开发没啥问题 >> 注意: >> - 大部分开发人员,经常会用到 `7.7` `8.0`等==多版本==的【云星空】进行开发, >> 这样就会遇到,Visual Studio 生到对应的IIS环境下,在调试过程中,会遇到个别因为版本不一致,导致dll报错, >> - 例如 `必须添加对程序集“Kingdee.BOS...., Version=8.1.410.13, Culture=neutral, PublicKeyToken=null”的引用` >> 这种错误常见是因为,VS项目中引用的dll与IIS下面的dll版本不一致,VS生成时,覆盖了IIS下面的Kindee的dll文件,不只是开发的dll # 2.方案 ![image.webp](/download/0100d8cf2ba472c0475f8d1773edb07fdc6f.webp) >1. Visual Studio中,双击项目【Properties】,然后点击 生成 - 输出路径,设置默认路径`bin\Deubg`,即 Visual Studio 项目路径下面 >2. 在生成事件中【生成后事件命令行】,输入命令 >> `xcopy /r /y $(TargetDir)YC.Kingdee.BOS.PlugIn.dll "D:\Program Files (x86)\Kingdee\K3Cloud\WebSite\bin\"` >> `xcopy /r /y $(TargetDir)YC.Kingdee.BOS.PlugIn.dll "D:\Program Files (x86)\Kingdee\K3Cloud\WebSite\tempfilePath\PluginLoaderTempBin\"` 这个语句可以不写 > - `YC.Kingdee.BOS.PlugIn.dll` 改成自己的项目dll, > - `"D:\Program Files (x86)\Kingdee\K3Cloud\WebSite\bin\"` 改成 自己需要附加调试的IIS的bin路径 > - ==如果需要复制多个dll,可以根据自己的需要增加== > 保存,点击 【重新生成解决方案】,就会把文件复制到对应的路径, ![image.webp](/download/0100c8b4d9ffa92544ee8b42ddfd7f3386b4.webp) # 小结 > 该方法,主要是解决无需修改输出路径,精准拷贝指定dll文件, > 防止开发版本与项目引用版本不一致,导致IIS下面dll文件版本混乱的问题

大佬,您看看我写的【VS2017及以上版本,设置项目引用属性[复制本地]为全局默认False,规避500报错https://vip.kingdee.com/link/s/MDmTO

是不是更方便,至少在解决方案这个层面上,一劳永安逸。

另建新的解决方案,也只需要把配置文件拷贝过去重启VS就OK了。

#使用技巧# # K3Cloud BOS 设计 C# 插件 自动拷贝插件到WebSite VS输出路径问题

# K3Cloud BOS 设计 C# 插件 自动拷贝插件到WebSite,VS输出路径问题# 1.场景![image.webp](/download/010043f3adfa42f342c29bcee...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息