Каков стандартный способ передачи и обработки массива в HTTP-запросе в .NET? У меня есть решение, но я не знаю, подходит ли ему лучший подход.
Здесь мое решение:
<form action="myhandler.ashx" method="post">
<input type="checkbox" name="user" value="Aaron" />
<input type="checkbox" name="user" value="Bobby" />
<input type="checkbox" name="user" value="Jimmy" />
<input type="checkbox" name="user" value="Kelly" />
<input type="checkbox" name="user" value="Simon" />
<input type="checkbox" name="user" value="TJ" />
<input type="submit" value="Submit" />
</form>
Обработчик ASHX получает параметр "пользователь" в виде строки с разделителями-запятыми. Вы можете легко получить значения, разделив строку:
public void ProcessRequest(HttpContext context)
{
string[] users = context.Request.Form["user"].Split(',');
}
Итак, у меня уже есть ответ на мою проблему: назначьте несколько значений одному имени параметра, предположите, что обработчик ASHX получает его как строку с разделителями-запятыми и разделяет строку. Мой вопрос заключается в том, как это обычно делается в .NET.
Какая стандартная практика для этого? Есть ли более простой способ захватить несколько значений, чем предполагать, что значение разделено запятой и вызывает на нем Split()? Является ли это тем, как массивы обычно передаются в .NET или вместо этого используется XML?
Есть ли у кого-нибудь представление о том, является ли это наилучшим подходом?