Skip to main content
 首页 » 编程设计

c#之.LIC/Licence (AjaxUploader.lic) 在发布/构建后不复制

2024年02月05日36zfyouxi

我最近检查了 ajaxuploader 许可文件没有复制到 IIS 发布文件夹,我尝试了文件属性中的选项: 构建操作 = 无/内容 复制到输出目录 = 始终复制

但是对于 .lic 文件,这似乎被忽略了

我也尝试使用 Xcopy 命令复制 .WEB 属性中的构建事件,但我无法解决问题。

有什么建议吗?

请您参考如下方法:

我能够找出问题...

让我们去那里解决问题,在 webConfig 中添加这些行:

<remove extension=".lic"/> 
<add extension=".lic" type="System.Web.Compilation.ForceCopyBuildProvider"/> 

它们应该采用以下结构:

<Configuration> 
   <System.web> 
      <Compilation> 
         <BuildProviders> 
           <Remove extension=".lic"/> 
           <Add extension=".lic" 
               Type="System.Web.Compilation.ForceCopyBuildProvider"/> 
         </BuildProviders> 
      </Compilation> 
   </system.web> 
</Configuration> 

通过分析发布输出,我发现“aspnet_compiler.exe”无法解释 ajaxuploader.lic 文件,如果您尝试将扩展名 .lic 更改为什么都没有或 .exe , .txt 文件将上升,知道我在出版物中分析了它执行 aspnet_compiler.exe 执行 trasnferencia:

所属文件夹:obj\Development\AspnetCompileMerge\Source 到文件夹:obj\Development\AspnetCompileMerge\TempBuildDir

在 Source 文件夹中,.lic 文件已经存在于 TempBuildDir 文件夹中,它消失了,问题本身是当使用 source -> target (TempBuildDir) 执行命令 aspnet_compiler.exe 时,.lic 文件没有被复制,所以 key 放置在 Webconfig 中,专门用于在运行 aspnet_compiler.exe 之前删除 .lic 扩展名,然后将 .lic 添加到文件中。

拥抱