在预编译了一个 ASP.NET 网站后,我得到了许多名称如下的文件
App_Web_accountbalance.aspx。 dfa151d5 .dll
你知道上面随机字符(粗体)的规则吗?
我们可以修复随机字符吗?
修复它的原因是如果我们稍后修改AccountBalance.aspx文件并重新编译网站,我们是否可以只替换App_Web_accountbalance.aspx.dfa151d5.dll。
谢谢你。
最佳答案
字符不是随机的,而是更符合散列。目的是使文件名在bin文件夹中是唯一的。虽然不可取,但您可以仅替换某些文件来更新您的网站。如果修改AccountBalance.aspx 并重新编译,则需要替换App_Web_accountbalance.aspx.dfa151d5.dll、accountbalance.aspx.dfa151d5.compiled 以及您的aspx 文件所依赖的其他程序集和文件。
我从我的经验中得出了答案。我不是在寻找文件命名规则,而是一种仅部署已更改页面的程序集的方法,与原始帖子的原因相同。
设置:
一个 Web 应用程序,部署为不可更新(在 PrecompileApp.config 中可更新=“false”),预编译的程序集没有固定名称
我做了什么:
如果你想知道我的故事,这个变化是由于计算中的一个因素发生了变化。客户很早就知道了这一变化,但直到它变得紧急才让我们知道。适当的部署会涉及其他各方和很多协调,为时已晚。另外,我只有两个版本的源代码,请求最新版本需要时间。因此,作为临时措施,需要针对该计算更改进行热修复。
关于ASP.NET:预编译文件的文件名生成规则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3298023/