Требуемый столбец не присутствовал в результатах операции FromSql. (Хранимая процедура с Oracle) - PullRequest
0 голосов
/ 16 января 2019

хотел вызвать хранимую процедуру с оракулом, поэтому после поиска я обнаружил, что чтобы сделать это, я должен создать модель и создать контекст и из этих вещей. но после этого я получил это из ниоткуда

Требуемый столбец не присутствовал в результатах операции FromSql.

Я работаю с Asp Core 2.2 и EF Core 2.2.1, теперь я получаю их и не могу понять, как это исправить или что не так.

Я пробовал много вещей, но ничего не меняется

Вот мои файлы

Модель

namespace test2._2.Models
{
    public class CodeProc
    {
        public int ID { get; set; }
        public int Erorrcode { get; set; }
        public string ErrorMsg { get; set; }
    }
}

Контекст

namespace test2._2.Models
{
    public partial class ModelCodingContext : DbContext
    {
        public ModelCodingContext(DbContextOptions<ModelCodingContext> optionss)
            : base(optionss)
        {
        }

        public virtual DbSet<CodeProc> CodeProcs { get; set; }
    }
}

фактическая процедура для вызова, запуска и печати результатов

var result = await _dbCodingContext.CodeProcs.FromSql("begin FIX_CODING.GET_CLIENT_CODE12(245,255,:num1,:num2,:msg);end;", oracleParameter, oracleParameter2, oracleParameter3).ToArrayAsync();

ViewData["test"] += result.ToString();

Ответы [ 2 ]

0 голосов
/ 17 января 2019

К счастью, я решил свою собственную, сделав хранимую процедуру для возврата refcursor, а не 3 значений, и это пошло навсегда.но мне интересно, что делать, если он возвращает значения, а не рекурсор.

0 голосов
/ 16 января 2019

Требуемые столбцы: ID, Erorrcode, ErrorMsg

Убедитесь, что хранимые процедуры возвращают именно эти столбцы. Учитывайте чувствительность к регистру, поэтому 'ID' не равно 'Id', а 'Errorcode' не равно 'ErrorCode'.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...