显式值和IDENTITY_INSERT

时间:2015-04-09 14:27:42

标签: c# sql asp.net-mvc

我正在开发一个非常基本的Web应用程序,并且我创建了一个简单的表来存储客户数据:

   CREATE TABLE [dbo].[CustomerTbl] (
    [customerID]     INT           IDENTITY (1, 1) NOT NULL,
    [firstName]      NVARCHAR (50) NOT NULL,
    [lastName]       NVARCHAR (50) NOT NULL,
    [homeTel]        NVARCHAR (50) NOT NULL,
    [mobTel]         NVARCHAR (50) NOT NULL,
    [passengerCount] NVARCHAR (50) NOT NULL,
    [email]          NVARCHAR (50) NULL,
    PRIMARY KEY CLUSTERED ([customerID] ASC)
);

在调试期间,我在尝试更新条目时遇到错误。内部异常显示:

{"Cannot insert explicit value for identity column in table 'CustomerTbl' when IDENTITY_INSERT is set to OFF."}

我无法理解为什么会发生这种情况,因为我没有尝试将任何值显式写入标识列(customerID)。

 if (ModelState.IsValid)
            {
                using (FlightDBEntities3 CustData = new FlightDBEntities3())
                {
                    CustData.CustomerTbls.Add( 
                        new CustomerTbl()      
                        {
                            firstName = newApp.FirstName,
                            lastName = newApp.LastName,
                            homeTel = newApp.HomeTel,
                            mobTel = newApp.MobileTel,
                            email = newApp.EmailAdd,
                            passengerCount = newApp.NumberOfPassengers,
                        });
                    CustData.SaveChanges();

我应该将IDENTITY_INSERT设置为ON吗?或者这里有什么东西让我完全失踪?目前我完全糊涂了。

提前感谢您的帮助。

0 个答案:

没有答案