Retrieve Stored Procedure Output Parameters in Entity Framework always null

后端 未结 1 1403
既然无缘
既然无缘 2021-01-22 09:27

C# code

public List GetProducts()
{
            var nameParam = new ObjectParameter(\"numbers\", typeof(int));
            List

        
相关标签:
1条回答
  • 2021-01-22 10:15

    You have to enumerate your result in order to actually execute the stored procedure. Try this:

    public List<searchProducts_Result> GetProducts()
    {
       var nameParam = new ObjectParameter("numbers", typeof(int));
       List<searchProducts_Result> listobjs = new List<searchProducts_Result>();
    
       // List<searchProducts_Result> objResult = null;
    
       searchProducts_Result outParam = new searchProducts_Result();
       using (var db = new SPWebEntities())
       {
          // by calling ToList() you execute the SP
          List<searchProducts_Result> objResult =
              db.searchProducts("asd", 2, 5, "15", nameParam).ToList();
    
          if (nameParam.Value != null)
             outParam.UserID = nameParam.Value.ToString();
          else
             outParam.UserID = "0";
          listobjs.Add(outParam);
    
          foreach (searchProducts_Result sr in objResult)
          {
             listobjs.Add(sr);
          }
       }
    
       return listobjs;
    }
    
    0 讨论(0)
提交回复
热议问题