вы не можете использовать foreach через Request.QueryString таким образом.
Попробуйте это (не проверено)
foreach (string KEY in Request.QueryString.Keys)
{
string value = Request.QueryString[KEY]; //already a string by design, no need to ToString() it
// ... use value for whatever you need
}
EDIT:
Visual Studio 2008 строит это хорошо (вставил в метод page_load на странице ASPX, чтобы попробовать); Visual Studio 2010 с пакетом обновления 1 (SP1) не жалуется на скорое строительство.
string[] array_split_item = new string[] { "<script", "</script>", "‘", "’" };
int pos = 0;
string strReq = "";
foreach (string var in Request.QueryString.Keys)
{
foreach (string strItem in array_split_item)
{
strReq = Request.QueryString[var].ToString();
pos = strReq.ToLower().IndexOf(strItem.ToLower()) + 1;
if (pos > 0)
{
Response.Write("Some Text");
Response.End();
}
}
}
Должно быть, где-то в коде что-то не так, я думаю.