I have just been experimenting with asp.net a little and I found something that I don't like very much. I was playing with a form (classic ASP) that submits to a new ASP.Net form. I am just doing a simple loop on the ASP.Net form to display the form values that are passed from the Classic ASP page. Then this is where I have found something that I don't like. Classic ASP had a key/value pair for the Request.Form collection. ASP.Net appears to only have a collection. So with classic asp you could just loop through the form and get the name of a form field and then the value of the form field, like on this FAQ http://www.aspfaqs.com/aspfaqs/ShowFAQ.asp?FAQID=64 Does anyone know how I can do this with ASP.Net? This is what I have in my ASP.Net page so far,<BR><BR>private void Page_Load(object sender, System.EventArgs e)<BR> {<BR> // Put user code to initialize the page here<BR> for(int i = 0; i < Request.Form.Keys.Count; i++)<BR> {<BR> Response.Write(Request.Form.GetKey(i).ToString() + "<BR>");<BR> }<BR> <BR> }<BR><BR>This gives me all the form data in a single dimmenstion. Like this<BR><BR>frmFldSiteName<BR>frmFldSiteURL<BR>frmFldUserName<BR>frmFldSubmit1<BR>test<BR><BR>Where "test" is actually the value of frmFldSiteName. Can anyone help me with how I can do it like Classic ASP.<BR><BR>Thanks.Just use the .GetValue method, like Request.Form.GetValue(i). That should do it. hthWell, that still does not give me what I want. Let me explain a little more maybe. I usually loop through a form so that I may parse out certain elements of it. Let me show you an old example of my Classic ASP logic. Can you help me convert it to ASP.Net? Thanks.<BR><BR>For intLoopCnt = 1 To Request.Form.Count<BR> strFieldName = Request.Form.Key(intLoopCnt)<BR> strFieldValue = http://aspmessageboard.com/archive/index.php/Request.Form.Item(intLoopCnt)<BR> If Left(strFieldName, 4) = "adv_" Or Left(strFieldName, 4) = "pub_" Then<BR> intFirstPlace = InStr(strFieldName, "_")<BR> intSecondPlace = InStrRev(strFieldName, "_")<BR> If Left(strFieldName, 4) = "adv_" Then<BR> intAdvId = Mid(strFieldName, intFirstPlace + 1, (intSecondPlace - 1) - intFirstPlace)<BR> intPubId = Mid(strFieldName, intSecondPlace + 1)<BR> arryParams = array("@advertiserInvoice", 1, "@publisherInvoice", 0,"@invoiceAmount", CDbl(Request.Form("amount_" & intAdvId & "_" & intPubId)), "@invoiceNumber", Request.Form("number_" & intAdvId), "@startDate", dteStartDate, "@endDate", dteEndDate, "@advId", intAdvId, "@pubId", intPubId, "@invoiceNotes", Request.Form("notes_" & intAdvId & "_" & intPubId), "@userId", intUserId)<BR> ElseIf Left(strFieldName, 4) = "pub_" Then<BR> intPubId = Mid(strFieldName, intFirstPlace + 1, (intSecondPlace - 1) - intFirstPlace)<BR> intAdvId = Mid(strFieldName, intSecondPlace + 1)<BR> arryParams = array("@advertiserInvoice", 0, "@publisherInvoice", 1,"@invoiceAmount", CDbl(Request.Form("amount_" & intPubId & "_" & intAdvId)), "@invoiceNumber", Request.Form("number_" & intPubId), "@startDate", dteStartDate, "@endDate", dteEndDate, "@advId", intAdvId, "@pubId", intPubId, "@invoiceNotes", Request.Form("notes_" & intPubId & "_" & intAdvId), "@userId", intUserId)<BR> End If<BR><BR> Call db_Start2(false, application("ConnectionString"), &h0004, "spAccnt_InsertInvoice", arryParams, "")<BR> End If<BR>NextNevermind, I figured it out by myself. Thanks though.