Как получить значение столбца из хранимой процедуры с помощью метода invoke в MVC5 - PullRequest
0 голосов
/ 10 сентября 2018

Я использовал метод getMethod.Invoke для выполнения хранимой процедуры в ASP.NET MVC 5. Метод «GetStoredProcedure» может выполнить хранимую процедуру, но не может получить точное возвращаемое значение (идентификатор и его имя) из хранимой процедуры. Я получил следующие результаты из EF вместо значения списка (ID и его имя) "{System.Data.Entity.Core.Objects.ObjectResult`1 [EF.Data.SaveTEST1_Result]} System.Linq.IQueryable {System.Linq. EnumerableQuery}».

Пожалуйста, помогите мне, как получить возвращаемое значение из хранимой процедуры, используя метод invoke в EF ASP.NET MVC 5.

Я вставил пример кода, который я использовал

public object GetStoredProcedure(string storedProcedure, object[] parameters)
{
        Type contextType = context.GetType();
        MethodInfo getMethod = contextType.GetMethod(storedProcedure);
        var result = getMethod.Invoke(context, parameters);
        return result;
}

, а также хранимая процедура:

CREATE PROCEDURE SaveTEST1  
     (@id INT, @name VARCHAR(5))
AS
BEGIN
    DECLARE @MaxID INT

    SELECT @MaxID = MAX(ID) 
    FROM TEST1

    INSERT INTO TEST1 
    VALUES(@MaxID, @name)

    SELECT ID, Name 
    FROM TEST1 
    WHERE ID = @MaxID
END

Примечание: я использую шаблон репозитория и класс отражения. Я надеюсь, что приведенного выше объяснения достаточно, чтобы объяснить мне, как получить ожидаемый результат.

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