Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 无法将显式值插入标识列insert\u OFF_Asp.net_Asp.net Mvc_Linq_Linq To Entities - Fatal编程技术网

Asp.net 无法将显式值插入标识列insert\u OFF

Asp.net 无法将显式值插入标识列insert\u OFF,asp.net,asp.net-mvc,linq,linq-to-entities,Asp.net,Asp.net Mvc,Linq,Linq To Entities,我已经在一个asp mvc项目上工作了几个星期。我已经通过linq使用实体插入和删除了数据库中的内容,没有问题。直到现在 我用默认布局创建了我的项目。所以在AccountController上,在用户注册后,我想在我的数据库中注册信息 Client: IdClient Name LastName 我通过表格询问此信息,并执行以下操作: Client client = new Client(); client.Name = model.Name; client.LastName = model.

我已经在一个asp mvc项目上工作了几个星期。我已经通过linq使用实体插入和删除了数据库中的内容,没有问题。直到现在

我用默认布局创建了我的项目。所以在AccountController上,在用户注册后,我想在我的数据库中注册信息

Client:
IdClient
Name
LastName
我通过表格询问此信息,并执行以下操作:

Client client = new Client();
client.Name = model.Name;
client.LastName = model.LastName
storeDB.Clients.Add(client);
storeDB.SaveChanges();

Note that I'm not attempting to insert anything on the IdClient

The class looks like:
public class Client{

  [Key]
   public int IdClient {get; set;}
   public string Name {get; set;}
   public string LastName {get; set;}
}
我插入了其他表,没有问题,但这一个给我带来了一个: 当identity\u insert设置为OFF时,无法在表“Client”中为identity列插入显式值

异常详细信息:System.Data.SqlClient.SqlException:当identity_insert设置为OFF时,无法在表“Client”中为identity列插入显式值

我检查了一下,桌上的一切看起来都正常,身份只有IdClient!!有人知道我为什么会得到这个吗=我不认为这与我在AccountsController中插入的事实有任何关系,这没有意义

更新:我插入了另一个表,但它没有标记我该错误,我不明白…我创建了相同的表!我创建了一个数据库,只有一个名为CLIENT的表,但它不起作用!有人知道我在哪里可以找到问题吗=

-我想在标识列中插入一个值,我尝试在显示表数据中添加一个新行,我手动在Name和Last Name中引入值,单击ENTER并创建了该行,但当我通过查询执行该操作时,它不允许我这样做


谢谢

检查映射类上的主键。它应该具有如下属性:

    [Column(Storage="_LetterOID", AutoSync=AutoSync.OnInsert, 
     DbType="Int NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
重要的位是IsDbGenerated=true。如果您的属性缺少该属性,则我们已找到错误!如果您使用的是设计器,只需重新生成此类(通过在设计器中删除表并从服务器资源管理器中删除它)


这为我解决了问题,以前有一次。

正如安德烈所说,检查一下你的设计师。 编写两个表的脚本,并确认有效的表确实有标识列。 尝试为两个插入运行探查器,它们插入的所有列是否相同


需要更多信息来回答此问题。

我不想插入键值,我也不想插入键值…答案是什么?让我查一查。我是用脚本而不是类创建的。使用EF图!!让我手动将其插入到show表数据中,这是否意味着什么=s