我在服务器上传.aspx文件时遇到运行时错误。我之前上传了相同格式的文件,它们工作正常,所以我的服务器支持这项服务。 此外,该应用程序在我的本地服务器上正常工作。
这是错误:
运行时错误
描述:服务器上发生了应用程序错误。此应用程序的当前自定义错误设置可防止远程查看应用程序错误的详细信息(出于安全原因)。但是,它可以由运行在本地服务器计算机上的浏览器查看。
详细信息:要在远程计算机上查看此特定错误消息的详细信息,请在位于当前Web应用程序根目录中的“web.config”配置文件中创建标记。然后,此标记应将其“mode”属性设置为“Off”。
这是我的代码:
<%@ Page Language="C#" %> <%@ import Namespace="System.IO" %> <%@ import Namespace="System" %> <%@ import
Namespace =“System.Collections.Generic”%&gt; &lt;%@ import Namespace =“System.Linq”%&gt; &lt;%@ import Namespace =“System.Web”%&gt; &LT;%@ import Namespace =“System.Web.UI”%&gt; &lt;%@ import Namespace =“System.Web.UI.WebControls”%&gt;
public void Button1_Click(object sender, EventArgs e) { //This a program that calculates your mortgage payments //Variables used double p; double m = 0; double rate = 0; int years = 0; int ny = 0; bool result = false; rate = DropDownList2.SelectedIndex; //Here we get the values from the comboBox1 and assign it to the variable "rate" //The following IF statements get the value from the radio buttons and assign it to the variable "years" if (RadioButtonList2.SelectedIndex == 0) { years = 15; } if (RadioButtonList2.SelectedIndex == 1) { years = 30; } if (RadioButtonList2.SelectedIndex == 2 && TextBox5.Text != null) { if (int.TryParse(TextBox4.Text, out ny)) { years = ny; } } //A simple if statement to check if the user filled out all values necessary for the calculation. //if any of the values where wrong or missing the program prompts the user to check his/her input again if (years != 0 && rate != 0 && double.TryParse(TextBox4.Text, out p)) { m = (p * rate / 1200.0) / (1 - Math.Pow((1.0 + rate / 1200.0), -12.0 * years)); result = true; } else { TextBox6.Text = "Please fill all boxes!"; } //If all of the above steps checks true then the payment amount is displayed on textBox3 if (result == true) { TextBox6.Text = m + ""; StreamWriter sw = File.AppendText("d:/log_file.txt"); sw.WriteLine(DateTime.Now + "\nAmount: " + m + ""); sw.WriteLine(); sw.Close(); } } public void Button2_Click(object sender, EventArgs e) { TextBox4.Text = null; TextBox5.Text = null; TextBox6.Text = null; RadioButtonList2.SelectedIndex = 0; } public void Page_Load(object sender, EventArgs e) { } </script>
<script src="css_browser_selector.js" type="text/javascript"></script>
Geo Nicolaides |每月付款
$(document).ready(function(){ $( '#page_effect')淡入(500)。 });
George Nicolaides
IT-330
<div class="footer"> <div id="nav"> <div class="navlist1"> <ul> <li> <a class="navlist" href="index.html">Home</a> </li></ul> </div> <div class="navlist1"> <ul> <li><a class="active" href="projects.html" >Projects</a></li> </ul> </div> <div class="navlist1"> <ul> <li><a class="navlist" href="view-log.aspx" >Log Files</a></li> </ul> </div> </div> </div> </div>
<div class="wrapper2"> <div class="content"> <div id="page_effect" style="display:none;">
<asp:Label ID="Label6" runat="server" Text="Years of payments:" ForeColor="White"></asp:Label> <asp:RadioButtonList ID="RadioButtonList2" runat="server" style="margin-left:0px; color:White;"> <asp:ListItem>15</asp:ListItem> <asp:ListItem>30</asp:ListItem> <asp:ListItem>Other</asp:ListItem> </asp:RadioButtonList> <asp:TextBox ID="TextBox5" runat="server" style="margin-left:0px" Width="47px"></asp:TextBox> <br /> <asp:Label ID="Label7" runat="server" Text="Interest Rate" ForeColor="White"></asp:Label> <br /> <asp:DropDownList ID="DropDownList2" runat="server" Height="23px" style="margin-left: 0px"> <asp:ListItem Selected="True">Rate</asp:ListItem> <asp:ListItem>3.0</asp:ListItem> <asp:ListItem>3.5</asp:ListItem> <asp:ListItem>4.0</asp:ListItem> <asp:ListItem>4.5</asp:ListItem> <asp:ListItem>5.0</asp:ListItem> <asp:ListItem>5.5</asp:ListItem> <asp:ListItem>6.0</asp:ListItem> </asp:DropDownList> <br /> <br /> <asp:Button ID="Button2" runat="server" style="margin-left: 0px" Text="Calculate" onclick="Button1_Click" ForeColor="Black" Height="37px" Width="119px" /> <br /> <br /> <asp:Label ID="Label8" runat="server" Text="Monthly Payment:" ForeColor="White"></asp:Label> <asp:TextBox ID="TextBox6" runat="server" style="margin-left: 0px" AutoPostBack="True" BackColor="White" Columns="50" ReadOnly="True" ViewStateMode="Enabled" Width="142px"></asp:TextBox> <br /> <br /> <asp:Button ID="Button1" runat="server" style="margin-left: 0px" Text="Reset" onclick="Button2_Click" ForeColor="Black" Height="37px" Width="119px" /> <br /> <br /> <div class="largespacebelow"> </div> </div> </div> </div> <div class="push2">
答案 0 :(得分:1)
您的第一步应该是获得“真正的”错误。如果您具有对服务器的本地/ GUI访问权限,请登录并尝试浏览localhost中的页面。
否则,您应该编辑web.config以将customerrors模式设置为off,以便远程查看详细的错误报告。注意:如果您担心安全问题,请不要这样做,但我认为这不是任何类型的高流量公共网站。
Here是关于customerrors web.config元素的页面,但基本上你只需将“mode”位翻转为“off”。这应该会为您提供更多信息。
在你的代码重复一遍之后我注意到了一件事(这可能只是因为格式化是各种各样的搞砸了),但我没有在你的button1_click方法之前看到一个开放的<script>
标记。您还应该考虑将所有C#移动到code-behind文件以分离逻辑和设计,并使所有内容更易于阅读和维护。
答案 1 :(得分:0)
我的网站顶部有一个错误的命名空间。