我正在开发一个asp.net应用程序atm,它将用于在数据库中插入一些数据。 昨天,我注意到我在一个insert语句中写了错误的表名。 Ofc我改变了它,但是 ..! 在一次又一次地获得相同的“未知列”异常后,我今天打开了SQL Profiler并查看了该语句。该语句仍然试图插入到错误的表中,但不会插入到“新”右表中,我实际上是在代码中写的。
为什么应用程序没有注意到更改?我尝试加载没有缓存的网站,点击STRG + F5 125392次。我也删除了缓存文件夹,也没有成功。
提前致谢!
编辑:您可能想知道此应用程序正在服务器上运行。因此,我需要使用记事本编辑.cs-Files,因为此服务器上没有安装Visual Studio。
答案 0 :(得分:1)
您确定这是作为网站项目运行而不是网络应用程序吗?
如果它作为网站项目运行,那么应该选择编辑.cs文件。检查这种情况的最快方法是引入故意的语法错误以防止编译类。
在部署之前编译Web应用程序项目。如果Web文件夹中有.cs文件,那么它已经通过快速复制粘贴而不是Visual Studio中的正确发布进行部署,并且虽然该网站应该可以正常工作,但更改为.cs文件将被忽略。作为一个已编译的项目,您需要在可以访问编译器的地方进行更改(理想情况下,在通常的开发机器上使用VS但我认为您可以使用命令行编译器),然后部署这些更改 - 理想情况下,通过发布使项目处于更清晰的状态,为下一个维护者:-)如果您必须手动执行任何原因,请记住您需要.aspx / .ashx等或.cshtml / .vhbtml文件和 DLL。
答案 1 :(得分:0)
.cs文件需要编译才能将更改添加到正在运行的库中。建议不要直接在服务器上编辑文件。