简体   繁体   English

用于存储过程的ASP.NET Web Api控制器不返回数据

[英]ASP.NET Web Api controller for stored procedure not returning data

I have the following stored procedure on my database: 我的数据库上有以下存储过程:

SELECT dbo.Persona.Nombre, dbo.Persona.Cedula, dbo.Prestamo.Empresa, dbo.Prestamo.Concepto, dbo.Prestamo.Monto, dbo.Prestamo.Fecha, dbo.Prestamo.PagadoATiempo
FROM dbo.Financiera INNER JOIN
     dbo.Prestamo ON dbo.Financiera.RNC = dbo.Prestamo.Empresa INNER JOIN
     dbo.Persona ON dbo.Prestamo.Cliente = dbo.Persona.Cedula
WHERE dbo.Persona.Cedula = @p1 

which is then in my context class as: 然后在我的上下文类中为:

 public partial class BDWSEntities : DbContext
{
    public BDWSEntities()
        : base("name=BDWSEntities")
    {
    }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        throw new UnintentionalCodeFirstException();
    }

    public virtual DbSet<Financiera> Financieras { get; set; }
    public virtual DbSet<Persona> Personas { get; set; }
    public virtual DbSet<Prestamo> Prestamoes { get; set; }

    public virtual ObjectResult<EnviarHistorial_Result> EnviarHistorial(string p1)
    {
        var p1Parameter = p1 != null ?
            new ObjectParameter("p1", p1) :
            new ObjectParameter("p1", typeof(string));

        return ((IObjectContextAdapter)this).ObjectContext.ExecuteFunction<EnviarHistorial_Result>("EnviarHistorial", p1Parameter);
    }

    public virtual ObjectResult<Nullable<bool>> EnviarSalud(string p1)
    {
        var p1Parameter = p1 != null ?
            new ObjectParameter("p1", p1) :
            new ObjectParameter("p1", typeof(string));

        return ((IObjectContextAdapter)this).ObjectContext.ExecuteFunction<Nullable<bool>>("EnviarSalud", p1Parameter);
    }
}

and I'm using the following controller to access it: 我正在使用以下控制器访问它:

namespace Web_Services.Controllers
{
    public class HistorialController : ApiController
    {
        private BDWSEntities db = new BDWSEntities();
        public IHttpActionResult GetHistorial(string Cedula)
        {

            var record = db.EnviarHistorial(Cedula);
            if (record == null)
            {
                return NotFound();
            }
            return Ok(record);
        }
    }
}

Now, in theory, this controller should return data, but when accessed via the relevant localhost/api/Historial, it doesn't return any data or message, it just returns an empty JSON file. 现在,从理论上讲,此控制器应该返回数据,但是当通过相关的localhost / api / Historial访问时,它不返回任何数据或消息,它仅返回一个空的JSON文件。 What's happening? 发生了什么?

Try this: 尝试这个:

    public virtual ObjectResult<EnviarHistorial_Result> EnviarHistorial(string p1)
    {
        var p1Parameter = p1 != null ?
            new ObjectParameter("p1", p1) :
            new ObjectParameter("p1", typeof(string));

        return this.Database.SqlQuery<EnviarHistorial_Result>("EnviarHistorial", p1);
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Call MySql stored procedure which take 2 parameters from asp.net core 2.2 web API controller - Call MySql stored procedure which take 2 parameters from asp.net core 2.2 web API controller 如何在 web api 上调用带有参数 asp.net 的存储过程? - How to call stored procedure with parameters asp.net on web api? 扩展我的 ASP.NET Core Web API (EF Core) 以调用存储过程 - Extend my ASP.NET Core Web API (EF Core) to call a stored procedure 如何使用 ZD7EFA19FBE7D3972FD5ADB6024Z2 在 ASP.NET Core 6 Web API 中运行存储过程? - How run stored procedure in ASP.NET Core 6 Web API using C#? ASP.NET Web API不返回XML - ASP.NET Web API not returning XML 如何在同一项目中的ASP.NET MVC控制器中从ASP.NET Web API获取数据 - How get data from asp.net web api in asp.net mvc controller in the same project 忽略 ASP.NET Web ZDB974238714CA8DE634A7CE1D083A14 中的 controller - Ignore controller in ASP.NET Web API I have custom data which is return from stored procedure so I need to add those data into list&lt;&gt; and return in asp.net core web api c# - I have custom data which is return from stored procedure so I need to add those data into list<> and return in asp.net core web api c# 在 ASP.NET Web api 控制器中为单元测试设置模拟存储库时返回错误请求 - Returning a Bad Request while setting up mock repository in an ASP.NET web api controller for a unit test Asp.Net Core Web API 2.2 控制器不返回完整的 JSON - Asp.Net Core Web API 2.2 Controller not returning complete JSON
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM