我正在玩asp.net中的内联代码块。有人可以告诉我为什么下面的代码不起作用吗?
<%@ Language="C#" %>
<%
Response.Write(TestClass.ShowMessage());
public class TestClass
{
public static string ShowMessage()
{
return "This worked!!";
}
}
%>
我收到以下错误消息:CS1513:}预期
答案 0 :(得分:4)
你有Response.Write
在函数之外浮动。
为什么不将此代码放在脚本标记中:
<script runat="Server">
public class TestClass
{
public static string ShowMessage()
{
return "This worked!!";
}
}
</script>
然后:
<%=TestClass.ShowMessage()%>
请注意<%=expr%>
是专门处理的。
许多人认为这是一种不纯的方法。你可以这样做:
<script runat="Server">
protected void Page_Load(object sender, EventArgs e)
{
litMessage = TestClass.ShowMessage();
}
</script>
<asp:literal id="litMessage" runat="server" />
答案 1 :(得分:3)
我认为能够编写一个完整的类来将它放在标记块
中<script runat="server" language="C#">
//Put your class here
</script>