如何解决CREATE 语句在 ASP.NET MVC 中失败
我的 create 语句突然无法工作,它直接显示错误消息(无法创建帐户)。我不确定我哪里出错了,因为我根本没有对其进行任何修改。总的来说,我遇到了这个问题三次,我唯一的解决方案是创建一个新项目,让它使用相同的确切代码再次工作。有什么建议可以确保将来不再发生此类事情?先感谢您!这是我在控制器中的代码:
[HttpPost]
public IActionResult createuser(Users usr)
{
if (!ModelState.IsValid)
{
ViewData["Message"] = "Invalid Input";
ViewData["MsgType"] = "warning";
return View("createuser");
}
else
{
string insert = @"INSERT INTO WBUsers(UserId,UserPw,FullName,Email,UserRole,dob,ContactNo,usr.Billing_Address)
VALUES('{0}',HASHBYTES('SHA1','{1}'),'{2}','{3}','{4}','{5}',{6},'{7}')";
if (DBUtl.Execsql(insert,usr.UserId,usr.UserPw,usr.FullName,usr.Email,usr.UserRole,usr.dob,usr.ContactNo,usr.Billing_Address) == 1)
{
string template = @"Hi {0},<br/><br/>
Welcome to WorldBay!
Your userid is <b>{1}</b> and password is <b>{2}</b>. Please change your password upon login.
<br/><br/>Adminstrator";
string title = "Account Sign Up";
string message = String.Format(template,usr.UserPw);
string result = "";
bool outcome = false;
outcome = EmailUtl.SendEmail(usr.Email,title,message,out result);
if (outcome)
{
ViewData["Message"] = "Account has been created";
ViewData["MsgType"] = "success";
}
else
{
ViewData["Message"] = result;
ViewData["MsgType"] = "warning";
}
}
else
{
ViewData["Message"] = "Account cannot be created";
ViewData["MsgType"] = "danger";
}
return View("createuser");
}
}
public static int Execsql(string sql,params object[] list)
{
List<String> escParams = new List<String>();
foreach (object o in list)
{
if (o == null)
escParams.Add("");
else
escParams.Add(EscQuote(o.ToString()));
}
DB_sql = String.Format(sql,escParams.ToArray());
int rowsAffected = 0;
using (sqlConnection dbConn = new sqlConnection(DB_CONNECTION))
using (sqlCommand dbCmd = dbConn.CreateCommand())
{
try
{
dbConn.open();
dbCmd.CommandText = DB_sql;
rowsAffected = dbCmd.ExecuteNonQuery();
}
catch (System.Exception ex)
{
DB_Message = ex.Message;
rowsAffected = -1;
}
}
return rowsAffected;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。