Commit 73556221 authored by yangxiaodong's avatar yangxiaodong

refactor

parent 97e08531
using Cap.Consistency.EntityFrameworkCore; using Cap.Consistency;
using Cap.Consistency.Store; using Cap.Consistency.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore;
namespace Microsoft.Extensions.DependencyInjection namespace Microsoft.Extensions.DependencyInjection
......
using System; using System;
using System.Linq;
using System.Threading; using System.Threading;
using System.Threading.Tasks; using System.Threading.Tasks;
using Cap.Consistency.Infrastructure; using Cap.Consistency.Infrastructure;
using Cap.Consistency.Store;
using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore;
namespace Cap.Consistency.EntityFrameworkCore namespace Cap.Consistency.EntityFrameworkCore
...@@ -126,6 +126,24 @@ namespace Cap.Consistency.EntityFrameworkCore ...@@ -126,6 +126,24 @@ namespace Cap.Consistency.EntityFrameworkCore
return OperateResult.Success; return OperateResult.Success;
} }
public Task<ConsistencyMessage> GetFirstEnqueuedMessageAsync(CancellationToken cancellationToken) {
cancellationToken.ThrowIfCancellationRequested();
return MessageSet.AsNoTracking().Where(x => x.Status == MessageStatus.WaitForSend).FirstOrDefaultAsync(cancellationToken);
}
//public void ChangeState(ConsistencyMessage message, MessageStatus status) {
// Context.Attach(message);
// message.Status = status;
// Context.Update(message);
// try {
// await SaveChanges(cancellationToken);
// }
// catch (DbUpdateConcurrencyException ex) {
// return OperateResult.Failed(new OperateError() { Code = "DbUpdateConcurrencyException", Description = ex.Message });
// }
// return OperateResult.Success;
//}
/// <summary> /// <summary>
/// Gets or sets a flag indicating if changes should be persisted after CreateAsync, UpdateAsync and DeleteAsync are called. /// Gets or sets a flag indicating if changes should be persisted after CreateAsync, UpdateAsync and DeleteAsync are called.
/// </summary> /// </summary>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment