Asp.net mvc 3 如何排除标识列-mvc3
上面的代码给出了此错误“当identity\u insert设置为OFF时,无法在表“VENDOR”中为identity列插入显式值 该值将作为0输入。查看探查器。它还包括供应商id列。如何排除它 下面是模型。我还需要做些什么吗Asp.net mvc 3 如何排除标识列-mvc3,asp.net-mvc-3,Asp.net Mvc 3,上面的代码给出了此错误“当identity\u insert设置为OFF时,无法在表“VENDOR”中为identity列插入显式值 该值将作为0输入。查看探查器。它还包括供应商id列。如何排除它 下面是模型。我还需要做些什么吗 [HttpPost] public ActionResult Create([Bind(Exclude = "vendor_id")]Vendor v) { if (ModelState.IsValid) {
[HttpPost]
public ActionResult Create([Bind(Exclude = "vendor_id")]Vendor v)
{
if (ModelState.IsValid)
{
eproc_db.Vendors.Add(v);
eproc_db.SaveChanges();
return RedirectToAction("Index");
}
return View(v);
}
问题是因为对于vendor_id,db列是数字的,这里是decimal。我将它们都设置为decimal,错误消失了
我还删除了([Bind(Exclude=“vendor\u id”)]从这两个位置开始谢谢martin。我希望在插入时自动填充列。vendor_id不应该是INT吗?在我的sql db中,它是数值的,我尝试了INT,它给了我这个错误“vendor”上的“vendor_id”属性不能设置为“Decimal”值。您必须将此属性设置为“Int32”类型的非空值。Thansk martin。这就是sue.我让供应商id在这两个地方都是int,这很有效
[Bind(Exclude = "vendor_id")]
public class Vendor
{
[Key]
public decimal vendor_id {get; set;}
[Required]
[Display(Name = "Name")]
public string vendor_name { get; set; }
[Required]
[Display(Name = "Address")]
public string vendor_address { get; set; }
[Required]
[Display(Name = "Tax ID")]
public string fed_tax_id { get; set; }
[Required]
[Display(Name = "Contact Name")]
public string contact_name { get; set; }
[Required]
[Display(Name = "Phone")]
public string phone { get; set; }
}