gpt4 book ai didi

ASP.NET WebSite发布与复制?

转载 作者:行者123 更新时间:2023-12-04 05:04:12 25 4
gpt4 key购买 nike

我在发布过程中遇到了很多问题,例如需要对代码进行小的更改时,有时IIS无法识别生成的DLL文件(例如dllt_code的dll文件),而IIS则表示其背后的代码有误。很抱歉,忘记了确切的错误消息。我希望您知道我的意思。

因此,我通常会执行一个简单的default.aspx.CS操作,而不是发布。

您能通过不使用Publish方法来告诉我我想念的是什么吗?出版如何更好?还是您更喜欢哪一个,为什么?

基本上它是一个利弊情况。

谢谢

最佳答案

好吧,这取决于“复制”的含义:

使用Publishing,您可以选择对全部或部分应用程序进行pre-compile。您可以publish到文件系统中的本地文件夹(而不是目标/主机),然后复制更新的文件(仅)。如果要更改“代码落后”(C#/vb代码),则意味着您可能仅需要“复制”/覆盖dlls。不用说,如果您进行了“内容”更改(html/razor/script/etc)更改,那么您还需要复制/覆盖这些更改。

如果您不熟悉部署,则可能会发现自己只是简单地复制/覆盖“所有内容”,这是最安全的方法。获得更多经验后,您将“识别”您仅需要更新的 Assets (一个或几个dlls和/或内容代码,而不是“所有内容”)。通常,这没有什么魔力,只需要在您的published(本地)或rebuild Web应用程序之后查看dll/文件的时间戳即可。

我建议您执行local publish,以便您可以看到服务器上实际需要的内容。发布到本地文件系统/文件夹中的文件需要在主机/服务器上。这样做将可视化并删除Publishing中存在的任何“谜”:

  • ,您将看到实际需要的(在您的服务器上)与不是
  • 的需求
  • ,您将看到文件时间戳,这将帮助您识别实际更改的文件与未更改的文件(因此不需要更新)。
  • 一旦掌握了窍门,就无需“复制”/ftp“所有内容”,而只需更新实际上已修改的文件(仅)。

  • 因此,“复制”可以表示上述意思,或者如果您只是说将所有开发代码(原始 (vb/cs)html/cs/vb)复制到主机,则意味着您的站点将是 dynamically compiled,因为需要/请求每个资源( pre-compiled都不是) )。同样“简单”,但您确实丢失了 pre-compilation,这意味着在请求/需要每个网页时会有延迟(ASP.net需要动态编译)。此外,您还将在服务器上公开源代码。根据您的情况,这可能并不意味着太多,但是要考虑的另一件事。

    这里还有更多 info on pre-compilation and options

    关于ASP.NET WebSite发布与复制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14102521/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com