mvc已添加了具有相同键的项

异常详细信息: System.ArgumentException: 已添加了具有相同键的项。

场景重现:在地址栏输入  http://localhost:51709/Home/Index?user[0].Name=tom&user[1].Name=jack

后台代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace MvcDemo.Controllers
{
    public class HomeController : Controller
    {
        public ActionResult Index(List<User> user)
        {
            return View();
        }
    }

    public class User
    {
        public string Name { get; set; }
        public string name { get; set; }  //添加大小写不同的重名属性时,报异常。
    }
}

结论:在对象的属性中,尽量不要有大小写不同的重名属性,尽管在编译时不会出错,但是可读性差,还可能会出现以上情况下的错误。


 

原文地址:https://www.cnblogs.com/MrHacker/p/4310587.html