public DataTable GetMetas(DateTime fecha, string agrup, int val) { MysqlDBContext _connect = new MysqlDBContext(); DataTable dt = new DataTable(); if (_connect.Open()) { MySqlCommand comando = new MySqlCommand(); comando.CommandText = "sp_EFICIENCIA_AGRUP"; comando.CommandType = CommandType.StoredProcedure; comando.Connection = _connect.Connection; comando.Parameters.Add("fecha", MySqlDbType.DateTime, 19).Value = fecha; comando.Parameters.Add("agrup", MySqlDbType.VarChar, 3).Value = agrup; comando.Parameters.Add("val", MySqlDbType.Int32, 10).Value = val; MySqlDataAdapter da = new MySqlDataAdapter(); da.SelectCommand = comando; da.Fill(dt); } return(dt); }
public WSocketController(ILogger <WSocketController> logger, IWebSocket webSocket, MysqlDBContext mysqlcontext) { _logger = logger; _socket = webSocket; _mysqlcontext = mysqlcontext; //_socket = new }
public UserRepository(MysqlDBContext context, ContestRepository repo, CountryRepository crepo, InstitutionRepository instrepo) { this._context = context; this._contestRepo = repo; this._countryRepo = crepo; this._institutionRepo = instrepo; }
public EventController(IModelService modelS, MysqlDBContext context) { this._context = context; this._modelS = modelS; }
public ContinentRepository(MysqlDBContext context) { this._context = context; }
public ContestController(MysqlDBContext c, ContestRepository repo, IModelService modelServices) { this._repo = repo; this._modelServices = modelServices; }
public ContestRepository(CountryRepository countryRepo, MysqlDBContext context) { this._context = context; this._countryRepo = countryRepo; }
/// <summary> /// 接收客户端数据.websocket 从ClientList类里拿。 /// </summary> /// <param name="webSocket">webSocket 对象</param> /// <param name="cancellationToken"></param> /// <returns></returns> public async Task <string> ReceiveDataAsyncDataTableNew(WebSocket webSocket, CancellationToken cancellationToken, MysqlDBContext mysqlcontext) { WebSocketReceiveResult result; MessageModel msg = null; if (webSocket.State != WebSocketState.Open) { return(""); } while (!webSocket.CloseStatus.HasValue) { ArraySegment <byte> buffer = new ArraySegment <byte>(new byte[1024 * 2]); result = await webSocket.ReceiveAsync(buffer, cancellationToken); if (result.MessageType == WebSocketMessageType.Close) { break; } ArraySegment <byte> segment = null; if (result.Count > 0) { try { msg = JsonConvert.DeserializeObject <MessageModel>(Encoding.Default.GetString(buffer)); if (msg == null) { break; } //这个只是发送了部分数据出去。 byte[] newbuf = Encoding.UTF8.GetBytes(msg.Data.ToString());//过度下,按实际大小返回给客户端。 segment = new ArraySegment <byte>(newbuf); ClientList.AddDicUser(msg.RoomId + msg.SenderId, webSocket); MessageModel message = new MessageModel(); //message.Id = 2;//id message.RoomId = msg.RoomId; message.SenderId = msg.SenderId; message.TargetId = msg.TargetId; message.Data = msg.Data; mysqlcontext.Add(message); mysqlcontext.SaveChanges(); } catch (Exception ex) { _logger.LogError(ex.Message); } List <Task> tasks = new List <Task>(); switch (msg.SendType) { //Broadcast all user. case Model.SendType.Broadcast: if (ClientList.userdic.ContainsKey(msg.RoomId)) { ClientList.userdic[msg.RoomId].ForEach(ws => { tasks.Add(ws.SendAsync(segment, result.MessageType, result.EndOfMessage, CancellationToken.None)); }); Task.WaitAll(tasks.ToArray()); } else if (ClientList.userdic.ContainsKey(msg.RoomId + msg.SenderId)) { //added by longdb 2020.6.17 Get offline information。 List <MessageModel> mmodel2 = mysqlcontext.Set <MessageModel>().Where(p => p.SenderId == msg.SenderId).ToList(); ClientList.userdic[msg.RoomId + msg.SenderId].ForEach(ws => { tasks.Add(ws.SendAsync(segment, result.MessageType, result.EndOfMessage, CancellationToken.None)); }); Task.WaitAll(tasks.ToArray()); } break; //one to one. case Model.SendType.Unicast: if (ClientList.userdic.ContainsKey(msg.RoomId) && ClientList.userdic[msg.RoomId].Count > 0) { WebSocket siglews = ClientList.userdic[msg.RoomId].Where(ws => ws == webSocket).FirstOrDefault(); tasks.Add(siglews.SendAsync(segment, result.MessageType, result.EndOfMessage, CancellationToken.None)); Task.WaitAll(tasks.ToArray()); } break; } } } if (msg != null && ClientList.userdic.ContainsKey(msg.RoomId)) { WebSocket socketmodel = ClientList.userdic[msg.RoomId].Where(ws => ws == webSocket).FirstOrDefault(); //移除聊天室中的某个成员 ClientList.RemoveDicUser(msg.RoomId, socketmodel); //关闭当前异常连接。 await socketmodel.CloseAsync(webSocket.CloseStatus.Value, webSocket.CloseStatusDescription, CancellationToken.None); } return(""); }
public CountryRepository(MysqlDBContext context, ContinentRepository repo) { this._context = context; this._contientRepo = repo; }
public InstitutionRepository(MysqlDBContext context, CountryRepository repo) { this._context = context; this._countryRepo = repo; }