我想在这里保存更改,我在db.SaveChanges()上遇到异常错误;我正在尝试向数据库输入一些内容,并说它需要进行验证。
这是错误:
一个或多个实体的验证失败。看到 'EntityValidationErrors'属性以获取更多详细信息。
描述:执行期间发生了未处理的异常 当前的网络请求。请查看堆栈跟踪了解更多信息 有关错误的信息以及它在代码中的起源。
异常详细信息: System.Data.Entity.Validation.DbEntityValidationException:验证 一个或多个实体失败。请参阅'EntityValidationErrors'属性 了解更多详情。
using (GameConnection db = new GameConnection())
{
Game newGame = new Game();
int GameID = 0;
if (Request.QueryString.Count > 0)
{
GameID = Convert.ToInt32(Request.QueryString["gameID"]);
newGame = (from game in db.Games
where game.gameID == GameID
select game).FirstOrDefault();
}
newGame.teamA = teamATextBox.Text;
newGame.teamB = teamBTextBox.Text;
if (GameID == 0)
{
db.Games.Add(newGame);
}
db.SaveChanges();
Response.Redirect("~/Default.aspx");
}
}
答案 0 :(得分:2)
在向数据库提交请求之前,错误表明至少有一个验证规则失败。
您需要做的是检查int size=strlen(array);
printf("%s\n",array);
printf("%d\n",size);
(或数据库表)的类定义并检查Game
或其他限制,并通过调试{{1来检查您的输入是否符合所有这些约束NotNull
更好的是,在Game
失败的db.SaveChanges();
添加一个要打印的抓点:
Console