假设表名就是class1
不给B字段赋值就行了class1 c = new class1();
c.A = "valA";
context.class1.Add(c);
context.SaveChanges();

解决方案 »

  1.   

    那你在view里面就不要有@Html.TextBoxFor(model=>model.B)
    自然在controller里的db.B.add(model)就不会添加B字段的数据
      

  2.   

    我是使用 @Html.DisplayFor(m => m.B),但一样会在生成insert中。
      

  3.   

    我是用codefirst的,不知道这个会不会和楼上两位说的有些不一样?
      

  4.   

    codefirst中在映射的时候也就是在继承EntityTypeConfiguration<>这个的时候属性设置Ignore(b => b.BookStatus);
    用ignore就是排除字段不让在数据库中生成的这个字段的如果是数据库中有的字段你不让插入的那么你可以再post到后台的时候拼接成Insert的Model时不给这个赋值
    或者手动把这个值设为空
    其实插入数据时你来操作Model中哪些写入数据库的
    重新再Action中拼接成你想要的Modle然后调用Insert就行了