表单操作错误

时间:2013-03-20 21:06:15

标签: asp.net forms webforms action nullreferenceexception

我有以下C#代码:

 AddCommentForm = string.Format("<form name=\"AddComment\" method=\"post\"  runat=\"server\" id=\"add_comment_form\"><p> TITLE:  <input type =\"text\" name=\"Title\" /></p><p> Contnt <textarea name=\"Content\" ></textarea></p><p> <button type=\"submit\">Submit!</button></p></form>");
                this.Form.Action = "ViewArticle.aspx?ArticleID=" + ArticleID;

问题是第二行出错:

System.NullReferenceException was caught

我的问题是我怎么会出现这个错误?

为什么使用此代码可行?

 <%
     this.Form.Action = "ViewArticle.aspx?ArticleID=" + ArticleID.ToString();
 %>
 <form name="AddComment"  method="post" runat="server">

1 个答案:

答案 0 :(得分:0)

AddCommentForm = string.Format("<form name=\"AddComment\" method=\"post\" ....

以上代码无效。 AddCommentForm是一个HtmlForm控件 - 不是字符串。此外,您无法在ASP.Net中的表单中创建另一个form标记。

this.Form.Action = "ViewArticle.aspx?ArticleID=" + ArticleID.ToString();

基本上,你是Cross-Site Scripting。虽然它编译,但它不起作用。当你到达ViewArticle.aspx页面时,你会收到错误。

如果您想在ASP.Net中使用表单,请使用iframe。