我是asp.net的新手(但是一位年迈的PHP开发人员)..
我现在处于一种情况,我应该在一个在线aspx脚本中进行一些小修改(使用vb.net)。
我下载了整个网站并在visual studio中打开它,所有我必须做的修改是在成功登录后重定向到另一个外部页面,我确定了我应该在名为login的文件中进行修改的地方.aspx.vb,并在其中添加了这一行:
Response.Redirect("My URL Here")
然后再次上传修改过的文件,根本没有变化。
我甚至尝试修改成功登录后出现的成功消息,然后重新上传以找不到任何更改(仍显示旧消息)
在上传页面之前,我是否缺少一些步骤?
答案 0 :(得分:3)
您需要编译项目,如果使用可视化工作室,您只需点击ctrl shift B即可构建整个解决方案。 Visual Studio检测解决方案中的哪个项目已更改并将进行编译。然后按照其他回答者的说法进行操作并上传.dll文件,该文件是已编译代码的容器,当您收到请求时,您将上传它的主机引用该文件。 (对于更多细节检查,容器是明确的过度简化: What is a dll?
答案 1 :(得分:2)
在ASP.NET中有two types of projects。
在第一种情况下,当您编辑.vb文件时,需要使用Visual Studio编译它并上传在bin文件夹中创建的生成的.dll文件。
在第二种情况下,您可以编辑.vb文件并上传它们,IIS将编译它们。
根据你所写的内容,你是第一个案例。在这种情况下,您需要让项目/解决方案文件在.vb文件中进行任何修改。如果您无法访问这些文件,则可以在.aspx或.ascx文件中注入一些代码。
例如:
<%
Dim flag As Boolean = false
// Write some code to set the flag
If (flag) Then
Response.Redirect("~/default.aspx")
End If
%>
使用<%....%>
,您可以编写代码,以便在页面开始渲染时执行。这是一种不好的做法,因为它的性能很差,因为代码在运行时被解析和执行,而.cs文件中的代码已经被编译。
但如果您没有项目文件,可以使用这种hacky方法进行细微更改。
编辑:如果您在第一个场景中,则需要构建项目,然后上传/bin
文件夹中的.dll文件。对于代码文件中的任何更改,您只上传.dll。如果您更改.aspx,.ascx等文件,则还需要上传这些文件