SqlParameter
和ObjectParameter
之間的主要區別是什麼?SqlParameter vs ObjectParameter
ObjectParameter[] parameters =
{
new ObjectParameter("MainUserName", user.MainUserName),
new ObjectParameter("MainUserFirstName",user.MainUserFirstName),
new ObjectParameter("MainUserLastName",user.MainUserLastName),
new ObjectParameter("DOJoin", DateTime.Now),
};
SqlParameter[] parameters =
{
new SqlParameter("@MainUserName", user.MainUserName),
new SqlParameter("@MainUserFirstName",user.MainUserFirstName),
new SqlParameter("@MainUserLastName",user.MainUserLastName),
new SqlParameter("@DOJoin", DateTime.Now),
};
我正在使用MVC代碼首先,我想通過存儲過程與我的數據庫進行通信。 那麼哪一個是將參數傳遞給SP的最佳方法? 我最後一次嘗試通過傳遞的Sql Perameters來執行SP但面對下面的例外
Procedure or function 'InsertUser' expects parameter '@MainUserName', which was not supplied
我試圖通過嘗試不同的方案來解決,但沒有運氣。 最後我想我應該使用Sql Perameters的Object Perameters intead。 但不知道這些之間的主要區別是什麼?
Edite 我想運行使用ExecuteSqlCommandAsync
我下面的代碼,希望object[] parameters
public async Task InsertAsync(ActionCriteria obj)
{
await _dbCOntext.Database.ExecuteSqlCommandAsync(obj.SpName, obj.SqlParameter) ;
}
public Task<int> ExecuteSqlCommandAsync(string sql, params object[] parameters);
所以我將如何傳遞sqlperameters到ExecuteSqlCommandAsync
,使之可以與提供執行SP SqlParameters not ObjectParameters