1

我有一个 asp.net 4.0 网络表单应用程序。它是一个网站,而不是一个项目,因此在部署之前没有预编译。

我对单个代码隐藏文件(c# 文件)进行了更改,我需要将其上传到网站。如果我只上传这个文件,它会在网站上编译吗?还是我需要上传其他文件来触发编译?例如,我需要上传前端的.aspx 文件吗?

我问这个是因为我所做的更改适用于我的开发机器,但不适用于生产服务器。我怀疑上传的 C# 文件可能尚未在 Web 服务器上编译,因此,该网站仍在运行较旧的 C# 文件。

有人对此有想法吗?提前致谢。

编辑:我应该指定它是一个网站项目,而不是一个网络应用程序项目。

4

4 回答 4

0

您不必再次编译它。上传新文件后,您的 Web 应用程序应该会更新。很可能是缓存问题。尝试使用其他浏览器或清除当前浏览器上的缓存。

于 2013-04-07T03:02:14.217 回答
0

当您在生产服务器上的网站项目上上传新的 CS 文件时,它应该动态地重新编译它们以允许拾取更改。是否有可能它在农场上并且所有服务器都没有更新?

于 2013-04-07T03:22:14.770 回答
0

让我澄清一下。您从后面的代码中对 ASP.NET 页面进行了更改。现在,您要将这些新更改上传到服务器。那是对的吗?

好的,您只需将更新的 .ASPX 页面(当然还有它的代码隐藏文件自动)上传到服务器并替换旧的 .ASPX 页面。现在应该会出现对该特定页面的更改。无论您是否预编译您的网站,这都无关紧要。

于 2013-04-07T15:58:01.700 回答
0

我有答案。我很抱歉,因为它可能甚至不应该被问到。H. Javier 在上面是正确的,正如我今天早上发现的那样(在看到他的答案之前)。

抱歉,原来我的同事上传到了 Web 服务器上的错误目录……我看不到发生了什么……这是一个冗长的故事,但我正在远程工作,没有直接访问权限自己到网络服务器。

但是,嘿,对于任何好奇的人,我只是上传了代码隐藏 (myFile.aspx.cs) 文件,asp.net 引擎发挥了它的魔力并且它工作了。因此无需上传其他文件(如前端 myFile.aspx 或 web.config)来强制编译。它自动发生。

谢谢你。

于 2013-04-07T17:34:46.607 回答