绑定排除仍然绑定参数

时间:2014-05-26 13:58:26

标签: asp.net-mvc

我希望在下列情况下理解Bind Exclude的行为:

这是我的模特课:

public class Client  
{   

        [Required]
        public int? ClientId { get; set; }

        [Required]
        public string Name { get; set; }
        public string Comments { get; set; }
}

这是我的控制器中的Post方法:

public int PostClient([Bind(Exclude = "ClientId")]Client client)

使用fiddler,我在Json字符串中发送ClientId和Name。当我调试PostClient时,我看到client.ClientId设置为我通过fiddler发送的值。但是因为我在绑定排除类别中使用了ClientId,所以我期望ClientId的null或默认值。有人可以帮我理解为什么为ClientId设置了值吗?

PS:我知道ViewModels在这种情况下工作得更好 - 仅使用我想要绑定的参数创建一个新的模型类。虽然我可能会这样做,但这个问题只是为了理解Bind排除。

0 个答案:

没有答案