asp.net – IDENTITY_INSERT设置为关闭错误
|
我有一个MVC Web应用程序,在我想要添加的模型中有一个表.我的主键与其他数据字段一起设置,但每次尝试添加到表中时,我会收到以下错误: “当IDENTITY_INSERT设置为OFF时,无法在表”TABLE_NAME“中插入标识列的显式值. 我不知道为什么这个问题出现,我将主键设置为身份,它也被设置为在Visual Studio表设计器中自动递增.有什么办法可以调整Visual Studio中的表设计器中的IDENTITY_INSERT参数?或者还有一些其他可能导致此问题. 更新:@Brian – 据我所知,我没有明确设置值,这里是添加到表的代码. //Add viewer
public void addViewer(ModelStateDictionary modelState,Users user)
{
var userToAdd = new UserRoles();
userToAdd.Users = user;
if (String.IsNullOrEmpty(userToAdd.Users.Username))
{
modelState.AddModelError("noName","Please enter a username for the new Viewer");
}
//See if Committee Member already exists
try
{
userToAdd = _db.UserRoles.First(ur => ur.Users.Username == userToAdd.Users.Username);
modelState.AddModelError("userExists","A Viewer with that username already exists in the system");
return;
}
catch (Exception e)
{
if (modelState.IsValid)
{
//Assign Committee Member role
userToAdd.Role = "Viewer";
userToAdd.Users = user;
//Add new Committee Member to User Roles and associated username to Users
_db.AddToUserRoles(userToAdd);
_db.SaveChanges();
}
}
}
解决方法您的代码似乎试图将一个特定的值插入到主键列中,该列被定义为IDENTITY.为了避免错误 – 不要插入任何值!让数据库处理为要插入的行获取一个新值. 如果您使用Linq-to-SQL,请在可视化设计器中单击相关表,并查看属性: alt text http://i39.tinypic.com/bgzs6d.png “自动生成的值”必须是“True”(这不是默认值),而自动同步应该是“OnInsert”(再次:不是默认值).此外,将“主键”设置为true,并检查以确保“服务器数据类型”正确 – Int NOT NULL IDENTITY(或类似的内容). 如果您需要覆盖默认行为(通常仅在清理脚本或一次性数据操作中),则可以在表上打开IDENTITY_INSERT,例如,之后,您可以将任何您喜欢的值插入IDENTITY列: SET IDENTITY_INSERT YourTableName ON INSERT INTO YourTableName(IdentityColumn) VALUES(5555) SET IDENTITY_INSERT YourTableName OFF 这更像是一个清理/数据管理类的任务 – 而不是你应该做的一切都是开发人员. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – 如何将XML作为POST传递给ASP MVC .NET中的A
- asp.net-web-api – OAuthBearerAuthenticationMiddleware
- asp.net – 无法加载文件或程序集“Oracle.DataAccess”或其
- 在ASP.NET WebForms中使用jQuery调用’WebMethod’
- asp.net – 在IIS中,existingResponse =“PassThrough”是什
- 如何检查ASP.Net中客户端(JavaScript)的Page.Validate()?
- asp.net-mvc – 为什么ASP.NET在静态图像请求上形成身份验证
- asp.net – Gridview行编辑 – 动态绑定到DropDownList
- asp.net – 如何通过webservice从返回的数据集中删除“diff
- ASP.NET MVC和FubuMVC之间的主要区别是什么?
- asp.net-mvc – 我的模型应该在哪里生活? Web层
- asp.net-mvc-4 – 如何在Durandal中使用cshtml文
- 拆分/模块化大型ASP.NET Web应用程序项目
- asp.net – XmlSerializer可以反序列化为Nullabl
- asp.net-mvc – 在foreach中的mvc radiobuttons
- asp.net-mvc-2 – ASP MVC2中部分缓存的当前做法
- asp.net-mvc-3 – 如何在剃须刀视图中设置复选框
- asp.net – 如何使用JSON方法序列化javascript对
- asp.net-mvc – 获取ActionName,ControllerName和
- 如何不缓存ASP.NET用户控件?
