[英]Connecting to mysql database with mvc4 razor c# [Error]
嗨,伙計們,我走了這個錯誤代碼: 執行命令定義時發生錯誤。 有關詳細信息,請參見內部異常。 在搜索我的文本到數據庫中。
private bool IsValidRegisterNewAcct(string acctname, string dispname, string email, string password)
{
var crypto = new SimpleCrypto.PBKDF2();
bool IsValid = false;
IsValidErrorMessage = "";
IsValidErrorMessageInt = 0;
string Newacctname = crypto.Compute(acctname.ToString());
//try
//{
using (var db = new MainDbContext())
{
//db.Connection.Open();
var user = db.user.FirstOrDefault(u => u.AcctNameSalt == Newacctname);
//var user = db.osoa_user.FirstOrDefault(u => u.Email == email);
if (user != null)
{
IsValid = false;
//db.Connection.Close();
IsValidErrorMessage = "Account Name already Exist!";
}
else
{
var InsertNewAcctName = db.osoa_user.CreateObject();
InsertNewAcctName.UserId = Convert.ToString( Guid.NewGuid());
InsertNewAcctName.AcctName = acctname;
InsertNewAcctName.AcctNameSalt = crypto.Compute(acctname);
InsertNewAcctName.DisplayName = dispname;
InsertNewAcctName.Email = email;
InsertNewAcctName.EmailSalt = crypto.Compute(email);
InsertNewAcctName.Password = crypto.Compute(password);
InsertNewAcctName.PasswordSalt = crypto.Salt;
InsertNewAcctName.UserLevel = 2;
db.user.AddObject(InsertNewAcctName);
db.SaveChanges();
//db.Connection.Close();
IsValid = true;
}
}
/*
}
catch (Exception e)
{
IsValidErrorMessageInt = 1;
IsValidErrorMessage = e.Message + ". Pls. contact your Administrator.";
IsValid = false;
}
*/
return IsValid;
}
並且錯誤指向此代碼:
var user = db.user.FirstOrDefault(u => u.AcctNameSalt == Newacctname);
關於內部異常的更新 。 我不知道是否給你正確的..我試圖使用此代碼:
try
{
}
catch (Exception e)
{
IsValidErrorMessageInt = 1;
IsValidErrorMessage = e.InnerException + ". Pls. contact your Administrator.";
IsValid = false;
}
MySql.Data.MySqlClient.MySqlException(0x80004005):MySql.Data.MySqlClient.NativeDriver.GetResult(Int32&受影響的行,Int64&Int64和MySql.Data.MySqlClient.MySqlStream.ReadPacket()的``字段列表''中的未知列'Extent1.DateCreated' MySql.Data.MySqlClient.Driver.GetResult(Int32 statementId,Int32&受影響的行,Int64&insertId)處的MySql.Data.MySqlClient.Driver.NextResult(Int32 statementId,布爾值)處的MySql.Data.MySqlClient.MySqlDataReader.NextResult( )的MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior行為)的MySql.Data.Entity.EFMySqlCommand.ExecuteDbDataReader(CommandBehavior行為)的System.Data.Common.DbCommand.ExecuteReader(CommandBehavior行為)的System.Data.EntityClient處。 EntityCommandDefinition.ExecuteStoreCommands(EntityCommand entityCommand,CommandBehavior行為)
從您的內部異常看來,您的MainDbContext
已與數據庫不同步(看起來Extent1
的列在數據庫中不存在)。
嘗試從模型中刪除該屬性,然后重試。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.