当IIS设置为匿名身份验证时,Request.Form不起作用

时间:2009-08-25 15:25:24

标签: asp.net iis

当IIS配置为集成Windows身份验证时,我的asp.net表单处理程序只接收表单方法发布数据。当我将其切换到匿名身份验证时,request.form集合为空。我希望IIS配置为匿名身份验证。可能是什么导致了这个?我在下面提供了我的代码:

这是我的表单页面HTML(它背后没有代码):


<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Testing.aspx.vb" Inherits="Testing" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
</head>
<body>
    <form name="frm" method="post" action="TestResults.aspx">
    <input type="text" name="mydata" value="" size="25" maxlength="255" />
    <input type="submit" name="submit" value="Submit" />
    </form>
</body>
</html>

这是我的表单处理程序HTML代码,后面的代码列出了所有表单变量:


<%@ Page Language="VB" AutoEventWireup="false" CodeFile="TestResults.aspx.vb" Inherits="TestResults" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <div id="resultsid" runat="server">
    </div>
</body>
</html>

Partial Class TestResults
  Inherits System.Web.UI.Page

  Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    Dim aString As String = ""

    For Each item As String In Request.Form
      aString &= item & " = " & Request.Form(item) & "<br />"
    Next

    Me.resultsid.InnerHtml = "<b>The Data:</b><br />" & aString
  End Sub
End Class

1 个答案:

答案 0 :(得分:0)

您的表单标记缺少runat = server。

编辑:仔细看看你想要做什么,你正试图做一个跨页回发。这种类型的回发在asp.net中比在旧的asp中更多。本文可能会有所帮助:

http://www.c-sharpcorner.com/UploadFile/DipalChoksi/xpgpostbk_asp2_dc08102006235543PM/xpgpostbk_asp2_dc.aspx