Использование LINQ для создания словаря из Request.Form.AllKeys
Так что у меня есть страница с входами, сделанными специально для привязки модели к словарю. Как пример ниже.
"person[0].Key" "Tom"
"person[0].Value" "cat"
"person[1].Key" "Jerry"
"person[1].Value" "mouse"
Таким образом, при использовании.Net MVC это будет привязано к словарю, как я хочу. Однако мне нужно повторить это поведение в вспомогательном методе старой страницы ASPX. Поэтому я подумал о том, чтобы просто разобрать коллекцию форм и создать из нее словарь. Что-то похожее на это (я знаю, что это не совсем правильно):
var people = Request.Form.AllKeys.Where(n => n.StartsWith("person"));
var x = people .Zip(Request.Form.AllKeys.Where(n => n.StartsWith("person")).Skip(1), (key, value) => new KeyValuePair<string, string>(key, value));
Однако это выглядит немного странно, и это работает не по порядку, а не по фактическим соглашениям об именах ключей и значений.
Есть ли лучший способ выполнить то, что я пытаюсь сделать. Либо через LINQ, либо с доступом к подшивке модели.