asp.net-mvc 在后期操作中获取字典或如何将 FormCollection 转换为字典

发布于 2024-08-31 09:46:05 字数 111 浏览 5 评论 0原文

有人知道如何将 FormCollection 转换为 IDictionary 或如何在后期操作中获取 IDictionary 吗?

anybody knows how to transform the FormCollection into a IDictionary or how to get a IDictionary in the post action ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

无尽的现实 2024-09-07 09:46:05

这只是 Omnu 代码的等价物,但对我来说似乎更优雅:

Dictionary<string, string> form = formCollection.AllKeys.ToDictionary(k => k, v => formCollection[v]);

This is just an equivalent of Omnu's code, but it seems more elegant to me:

Dictionary<string, string> form = formCollection.AllKeys.ToDictionary(k => k, v => formCollection[v]);
我为君王 2024-09-07 09:46:05

我是这样做的:

            var form = new Dictionary<string, string>();
            foreach (var key in formCollection.AllKeys)
            {
                var value = formCollection[key];
                form.Add(key, value);
            }

I did it like this:

            var form = new Dictionary<string, string>();
            foreach (var key in formCollection.AllKeys)
            {
                var value = formCollection[key];
                form.Add(key, value);
            }
舂唻埖巳落 2024-09-07 09:46:05

在 .Net Core 上,这个对我有用。

var collection = Request.Form.Keys.ToDictionary(k => k, v => Request.Form[v].ToString());

On .Net Core this one worked for me.

var collection = Request.Form.Keys.ToDictionary(k => k, v => Request.Form[v].ToString());
我家小可爱 2024-09-07 09:46:05
    public static IDictionary<string, string[]> GetFormParameters(FormCollection collection)
    {
        IDictionary<string, string[]> formParameters = new Dictionary<string, string[]>();
        foreach (var key in collection.AllKeys)
        {
            if (key == null) continue;
            var value = collection.GetValues(key);

            // value = CrossSiteAttackUtil.CleanHtml(value);
            if (value != null)
            {
                formParameters.Add(key, value);
            }
        }
    public static IDictionary<string, string[]> GetFormParameters(FormCollection collection)
    {
        IDictionary<string, string[]> formParameters = new Dictionary<string, string[]>();
        foreach (var key in collection.AllKeys)
        {
            if (key == null) continue;
            var value = collection.GetValues(key);

            // value = CrossSiteAttackUtil.CleanHtml(value);
            if (value != null)
            {
                formParameters.Add(key, value);
            }
        }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文