проблема
Я строю веб -API Core 8 ASP.net Core 8 с использованием SQLKata для запроса данных с SQL Server. Когда я делаю запросы в свои конечные точки API, которые используют SQLKATA, я получаю пустые результаты, хотя база данных содержит соответствующие данные. Однако тот же запрос, когда он выполнен через SQLKATA в моем API, возвращает пустой набор. < /P>
-- Table Structure (Example)
CREATE TABLE MyDataTable
(
Id INT PRIMARY KEY,
Name NVARCHAR(100),
Status NVARCHAR(50)
);
INSERT INTO MyDataTable (Id, Name, Status)
VALUES (1, 'Alice', 'Active'),
(2, 'Bob', 'Inactive');
< /code>
Когда я запускаю следующий запрос в SSMS, я получаю результаты, как и ожидалось: < /p>
SELECT *
FROM MyDataTable
WHERE Status = 'Active';
< /code>
sqlkata Query в ASP.Net 8 Core Web API - вот различные способы, которыми я пытался запросить данные, используя SQLKATA: < /p>
[*] Dynamic (все столбцы, как словарь) < /li>
< /ol>
using SqlKata;
using SqlKata.Execution;
public async Task GetData(string status)
{
using (var db = QueryFactoryHelper.ConnectDB(_configuration))
{
var query = new Query("MyDataTable").Where("Status", status);
// Log the generated SQL for debugging
var compiler = new SqlKata.Compilers.SqlServerCompiler();
var compiled = compiler.Compile(query);
_logger.LogInformation("SQL: {Sql} | Params: {@Params}", compiled.Sql, compiled.Bindings);
var data = await db.GetAsync(query);
return new OkObjectResult(data);
}
}
< /code>
Dynamic (все столбцы, как динамические) < /li>
< /ol>
var data = await db.GetAsync(query); // returns IEnumerable
< /code>
сильно типичный DTO < /p>
public class MyDataDto
{
public int Id { get; set; }
public string Name { get; set; }
public string Status { get; set; }
}
// Usage:
var data = await db.GetAsync(query);
< /code>
< /li>
< /ol>
То, что я попробовал < /p>
Проверенные имена таблицы и столбцов являются правильными. < /li>
Проверьте, что строка подключения является правильной. < /li>
Созданные SQL и параметры (они правильно. /> Запустил сгенерированный SQL непосредственно в SSMS и получил результаты.
Обеспеченное на обеспечении асинхронизации/ожидания. /> Вопрос < /strong> < /p>
Почему мой запрос SQLKATA в моем веб -API ASP.NET Core 8 не возвращает результаты, даже если те же SQL возвращает данные в SSMS? Есть ли что -то не так с тем, как я строю или выполняю запрос, или с картированием результатов?>
Подробнее здесь: https://stackoverflow.com/questions/796 ... net-core-8