Выполнить хранимую процедуру из структуры сущностей - PullRequest
0 голосов
/ 26 мая 2020

Я работаю над основным проектом веб-API asp. net, где мне нужно получить результат от процедуры. Я сопоставляю результат процедуры с некоторой моделью (TblUser, который представляет собой просто класс со свойствами, а не таблицу в базе данных). Я получаю сообщение об ошибке «TblUser не является объектом», как выполнить процедуру, чтобы получить результат в желаемой модели.

Можем ли мы создать некоторую общую c функцию, в которой мы также можем передавать входные данные процедуры?

Изменить: здесь процедура возвращает все свойства сопоставления модели TblUser, только TblUserId не возвращается.

    public List<TblUser> GetUsersServerSide(Filters filter)
    {
        List<TblUser> users = new List<TblUser>();
        users = null;
        try
        {
            using (var ctx = new DBContext())
            {
                var SearchValue = new SqlParameter("@SearchValue", filter.SearchValue ?? "");
                var CurrentPageNumber = new SqlParameter("@PageNo", filter.CurrentPageNumber);
                var PageSize = new SqlParameter("@PageSize", filter.PageSize);
                var SortBy = new SqlParameter("@SortColumn", filter.SortBy);
                var SortDir = new SqlParameter("@SortOrder", filter.SortDir);
                users = db.TblUsers
                .FromSql("Exec dbo.GetUsers @SearchValue, @PageNo, @PageSize, @SortColumn, @SortOrder", SearchValue, CurrentPageNumber, PageSize, SortBy, SortDir).ToList();
            }
            return users;
        }

public class TblUser
{
    public int TblUserId { get; set; }        
    public int TotalCount { get; set; }
    public int EmployeeId { get; set; }
    public string Name { get; set; }
    public string Gender { get; set; }
}  
...