【发布时间】:2021-08-30 22:47:53
【问题描述】:
我尝试使用以下函数执行存储过程,但表没有更新,也没有显示错误,您能帮帮我吗
public static void UpdateShareDate(string Sharepath, string ShareDate, int TransactionID, int Clientid)
{
try
{
using (var context = new AppDBContext())
{
MySqlConnector.MySqlParameter[] queryParams = new MySqlConnector.MySqlParameter[] {
new MySqlConnector.MySqlParameter("@p1", Sharepath),
new MySqlConnector.MySqlParameter("@p2", ShareDate),
new MySqlConnector.MySqlParameter("@p3", TransactionID),
new MySqlConnector.MySqlParameter("@p4", Clientid)
};
string store_pocedure = "call MediaFile_Update(@p1,@p2,@p3,@p4)";
var result = context.DBSetMediaFiles.FromSqlRaw(store_pocedure, queryParams);
}
}
catch (Exception ex)
{
throw;
}
}
【问题讨论】:
-
请分享
MediaFile_Update。 -
您实际上并没有执行查询。在
FromSqlRaw(...)之后添加.ToList() -
数据库有主键吗?如果数据库中存在主键并且该键已经在数据库中,则更新将不起作用。然后,您需要对新密钥使用 Insert 并为现有密钥使用更新。
-
请更新存储过程。
标签: c# mysql entity-framework asp.net-core stored-procedures