我最近检查了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>
通过分析发布的输出,我发现ajaxuploader.lic文件无法由“ aspnet_compiler.exe”解释,如果您尝试将扩展名.lic更改为无或更改为.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文件,因此放置了密钥Webconfig中的Windows专门用于在运行aspnet_compiler.exe之前删除.lic扩展名,然后将.lic添加到文件中。
拥抱