/
rezvich
/
SoapBatchProcessor
Обзор
Документация
Войти
/
rezvich
/
SoapBatchProcessor
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Data/MpiRequestsRepository.cs
42 строки
1 KB
waweda299
a
17 дек 2025, 17:37
17 дек 2025, 17:37
af9005b
Код
Авторство
О чём код?
using Dapper; using Microsoft.Data.SqlClient; namespace SoapBatchProcessor.Data { public class MpiRequestsRepository { private readonly string _cs; private readonly int _timeout; public MpiRequestsRepository(string cs, int timeout) { _cs = cs; _timeout = timeout; } public async Task MarkInProgressAsync(long requestId) { const string sql = @" UPDATE dbo.MpiRequests SET Status = 'InProgress', AttemptCount = AttemptCount + 1 WHERE RequestId = @requestId AND Status = 'Queued';"; using var con = new SqlConnection(_cs); await con.ExecuteAsync(sql, new { requestId }, commandTimeout: _timeout); } public async Task MarkProcessedAsync(long requestId, bool success, string? error) { const string sql = @" UPDATE dbo.MpiRequests SET Status = @status, LastError = @error WHERE RequestId = @requestId;"; using var con = new SqlConnection(_cs); await con.ExecuteAsync(sql, new { requestId, status = success ? "Processed" : "Failed", error }, commandTimeout: _timeout); } } }