我正在尝试使用代码优先方法从EF 6中的存储过程中获取一些记录。最初它正在工作,因为我使用'sa'登录连接字符串。当我更改连接字符串中的登录详细信息时,它开始抛出错误
数据库
中的CREATE TABLE权限被拒绝
有关我在数据库中禁用访问表的信息。因此,我使用存储过程来访问sa用户的所有用户例外的数据。我进入SQL Server探查器,看看查询实际上是在做什么,并看到它试图创建我的实体表。
这是我的代码:
public IEnumerable<_BankHoliday_SP> _BankHoliday_SP
{
get
{
var content = _dbContext.Database.SqlQuery<_BankHoliday_SP>("exec spConfigBankHolidayGet");
return content;
}
}
当我尝试从ViewModel类访问数据时。
var bankHolidayList = _repository._BankHoliday_SP.ToList();
我收到了错误。
答案 0 :(得分:0)
尝试从sql server
执行spEXEC proc_name
如果它工作,则不需要传递具有sp名称的exec
var content = _dbContext.Database.SqlQuery<_BankHoliday_SP>("exec spConfigBankHolidayGet");
到
var content = _dbContext.Database.SqlQuery<_BankHoliday_SP>("spConfigBankHolidayGet");