如何在已部署的网站上编译cs文件修改?可能吗?

时间:2011-10-05 18:47:32

标签: asp.net

如果之前有人问过,我道歉。

如果我有一个当前部署的ASP.Net C#网站,其中有一个cs文件中需要的小错误或修改,是否可以修改cs文件并让IIS重新编译ASP.Net网站而不是使用Visual Studio或SharpDevelop重建网站?

我熟悉自动编译更改的PHP网站。有没有办法让ASP.Net或IIS做类似于ASP.Net网站的代码隐藏文件?

据我所知,修改web.config文件可能会强制重新编译,修改ASPx文件会自动显示更改,但我在代码隐藏文件中没有找到相同的成功。

谢谢。

编辑(下面的答案):

使用现有源(包括解决方案文件)重新编译现有ASP.Net网站的命令是:

%windir%\microsoft.net\framework\v4.0.30319\msbuild /m Solution.sln /p:Configuration=Debug
@IF %ERRORLEVEL% NEQ 0 GOTO err
@exit /B 0
:err
@PAUSE
@exit /B 1

将上述代码粘贴到解决方案目录中的批处理文件中。将Solution.sln更改为您的解决方案文件,修改框架以匹配您安装的版本。您也可以将配置选项更改为“发布”。

*使用SharpDevelop源代码的批处理文件代码。基于此论坛帖子的想法:http://community.sharpdevelop.net/forums/t/8281.aspx

3 个答案:

答案 0 :(得分:5)

使用现有源(包括解决方案文件)重新编译现有ASP.Net网站的命令是:

%windir%\microsoft.net\framework\v4.0.30319\msbuild /m Solution.sln /p:Configuration=Debug
@IF %ERRORLEVEL% NEQ 0 GOTO err
@exit /B 0
:err
@PAUSE
@exit /B 1

将上述代码粘贴到解决方案目录中的批处理文件中。将Solution.sln更改为您的解决方案文件,修改框架以匹配您安装的版本。您也可以将配置选项更改为“发布”。

*使用SharpDevelop源代码的批处理文件代码。基于此论坛帖子的想法:http://community.sharpdevelop.net/forums/t/8281.aspx

答案 1 :(得分:3)

如果将网站部署为.aspx和.cs文件,则每当您放置较新的文件时,它都会自动编译。它是在第一个Web客户端请求某些内容时编译的。我经常为我的非商业网站使用此功能,因为上传单个文件比从头开始重新部署整个网站要快得多。

答案 2 :(得分:2)

ASP.net的工作方式不同于tath做PHP的方式

  • PHP被解释为纯粹像javascript
  • ASP.net是用中间语言编译的,后来解释为Java

代码背后的代码在dll中编译,并由网页中的ASP VM解释;如何在DLL中编译此代码,您可以像PHP一样即时添加错误修正,如果不需要,则需要重新打开项目并重新编译Web项目,卸载Web应用程序并重新安装新的。

使用发布模式中的错误修正程序编译项目,复制名为[nameof your project] .dll的主项目的dll,并将其复制到Web服务器中应用程序文件夹内的文件夹bin中...应该可行。 ..如果不重新编译并再次卸载/安装您的应用程序......

抱歉,但这是这种平台的不足之处