[성현모] Select기능 추가, ReadUncommitted level 적용
This commit is contained in:
@ -27,5 +27,17 @@ namespace HubX.Server.Controllers
|
||||
|
||||
return Results.Ok(res);
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
public async Task<IResult> SelectUniqueKey(Request_SelectUniqueKey request)
|
||||
{
|
||||
var guid = Guid.NewGuid();
|
||||
Log4net.WriteLine($"[Requeust]({guid}) UniqueKey/SelectUniqueKey::{request.ToJson()}", LogType.CONTROLLER);
|
||||
|
||||
Response_SelectUniqueKy res = await _uniqueKeyService.Request_SelectUniqueKey(request);
|
||||
Log4net.WriteLine($"[Response]({guid}) UniqueKey/SelectUniqueKey::{res.ToJson()}", LogType.CONTROLLER);
|
||||
|
||||
return Results.Ok(res);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,6 +1,9 @@
|
||||
using DB.HubXDB;
|
||||
using HubX.Library.Enums;
|
||||
using HubX.Library.Http.Packet;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.Identity.Client.Extensions.Msal;
|
||||
using System.Data;
|
||||
using SystemX.Core.DB;
|
||||
|
||||
namespace HubX.Server.Services
|
||||
@ -39,10 +42,10 @@ namespace HubX.Server.Services
|
||||
if (context != null)
|
||||
{
|
||||
using (var transaction = await context.CreateTransactionAsync())
|
||||
{
|
||||
{
|
||||
await context.AddAsync(storage);
|
||||
transactionResult = await context.CloseTransactionAsync(transaction);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//db error
|
||||
@ -59,5 +62,43 @@ namespace HubX.Server.Services
|
||||
|
||||
return response;
|
||||
}
|
||||
|
||||
public async Task<Response_SelectUniqueKy> Request_SelectUniqueKey(Request_SelectUniqueKey request)
|
||||
{
|
||||
Response_SelectUniqueKy response = new Response_SelectUniqueKy();
|
||||
|
||||
if (request != null)
|
||||
{
|
||||
response.Identity = request.Identity;
|
||||
|
||||
var context = _efCoreService.GetDBContext<HubXContext>();
|
||||
if (context != null)
|
||||
{
|
||||
try
|
||||
{
|
||||
using (var transaction = await context.CreateTransactionAsync(IsolationLevel.ReadUncommitted))
|
||||
{
|
||||
var data = context.TStorages.AsNoTracking().First(x=>x.CIdentity == request.Identity);
|
||||
await context.CloseTransactionAsync(transaction);
|
||||
if(data != null)
|
||||
{
|
||||
response.Data1 = data.CData1;
|
||||
response.Data2 = data.CData2;
|
||||
response.Data3 = data.CData3;
|
||||
response.Data4 = data.CData4;
|
||||
response.Data5 = data.CData5;
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Log4net.WriteLine($"Select Unique Key Transaction Error", LogType.Error);
|
||||
Log4net.WriteLine(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return response;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user