Раньше это работало хорошо, а недавно линия перестала работать. Этот код использует контекст БД для запуска процедуры и возврата ее в формате списка. По какой-то причине я не вижу ошибки, просто вижу, что действие не выполнено, потому что оно не выполняется.
Я запустил хранимую процедуру в SQL Server и вижу желаемые результаты, но не вижу, что это происходит на прикладном уровне.
[Http.Route("postsearch")]
public async Task<IHttpActionResult> PostSearch(SearchInputDTO srequest)
{
var searchString = srequest.SearchValue.ToString();
List<output> seResult = new List<output>(_output.searchLog(searchString)); /*This line stopped working*/
return Ok(seResult);
}
Хранимая процедура:
SET FMTONLY OFF
GO
SET NOCOUNT ON
GO
ALTER PROCEDURE [dbo].[searchLog]
@searchValue VARCHAR(150)
AS
SELECT *
FROM [dbo].[output]
WHERE CONTAINS (*, @searchValue)
Реализация в Entity Framework
public virtual int searchLog(string searchValue)
{
var searchValueParameter = searchValue != null ?
new ObjectParameter("searchValue", searchValue) :
new ObjectParameter("searchValue", typeof(string));
return ((IObjectContextAdapter)this).ObjectContext.ExecuteFunction("searchLog", searchValueParameter);
}
Это должно вернуть строки из запроса.