我正在开发一个非常基本的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
吗?或者这里有什么东西让我完全失踪?目前我完全糊涂了。
提前感谢您的帮助。