注意:出现此问题的原因是页面的渲染事件被覆盖,这反过来又导致了.net错误显示,而该显示将显示为反而显示垃圾,并且没有看到班上的编码错误。如何在C#页面中编写调试信息
我想将调试信息放在C#网页上。我做了一个包含数组的静态类,并在代码中的不同位置添加了调试消息。该类有一个get方法返回一个串联所有数组元素的字符串。在页面底部我有:
</body> <!--debug=<%=debugging.get()%> --> </html>这总是搞砸了页面。整个页面显示垃圾。如果我使用如下的文本常量,它可以正常工作:
</body> <!--debug=<%="xxx"%> --> </html>我在想这可能是unicode问题或其他问题。我尝试过转换,无法使其正常工作。该类是:
using System;
public static class debugging {
public static String[] messages;
public static void add(String v) {
Array.Resize(ref messages, messages.Length + 1);
messages[messages.Length - 1] = v;
}
public static String get() {
String s = "";
for (int i = 0; i < messages.Length; i++) s += messages[i] + "\r\n";
return s;
}
}
我该如何得到这个工作?
的改进版本,如果我使用任何代码<% and %>之间的一切,如落入代码,并使用的Response.Write,页面始终显示垃圾桶。使用常量是可以的,但没有变量。不过,我能够显示连接字符串。 – subjectivist
我尝试使用小写字符串而不是类中的字符串。 .ConnectionStrings的信息[zz] .ConnectionString表示返回一个小写字符串。没有不同。不过,我可以使用<%= .ConnectionString%>。 – subjectivist
你不应该把你的类放在'System'命名空间中。使用你自己的名字空间。常用格式包括“MyCompany.MyProject”,“MyProject”和“MyCompany.MyProject.MySubproject”。 – mason