.LIC / License(AjaxUploader.lic)在发布/构建后不复制

时间:2017-03-30 18:52:24

标签: c# visual-studio ajaxuploader

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

然而,对于.lic文件,这似乎被忽略了

我还尝试使用Xcopy命令复制.WEB属性中的Build Events,但我无法解决问题。

有什么建议吗?

1 个答案:

答案 0 :(得分:3)

我能够找出问题......

让我们去那里解决问题在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>

通过分析发布输出,我发现ajaxuploader.lic文件不能被&#34; aspnet_compiler.exe&#34;解释,它不理解.lic并最终忽略它,如果你试图改变扩展.lic到没有或.exe,.txt文件会上升,知道我在发布时分析了它执行aspnet_compiler.exe做trasnferencia:

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

在Source文件夹中,.lic文件已存在于TempBuildDir文件夹中,它消失了,问题本身就是执行命令aspnet_compiler.exe with source - &gt;目标(TempBuildDir)没有复制.lic文件,因此键被放置在Webconfig中,专门用于在运行aspnet_compiler.exe之前删除.lic扩展名,然后将.lic文件添加到文件中。

拥抱