private void traiterMessageRequete(Message msg) { // Si Destinataires = null, le message s'adresse au monde. if (msg.Destinataires == null) { TypeRequete typeRequete = (TypeRequete)msg.Contenu[0]; if (typeRequete == TypeRequete.GenererAgents) { this.genererAgents((int)msg.Contenu[1], (Type)msg.Contenu[2]); } //this.test((int)msg.Contenu[0]); } }
private static object ModeConnecte(TypeRequete tRequete, string sql) { // SqlConnection var cnx = new SqlConnection(); cnx.ConnectionString = @"Data Source=.\SQLEXPRESS;Initial Catalog=AdventureWorks2016;Integrated Security=True"; cnx.Open(); // SqlCommand var cmd = new SqlCommand(); cmd.Connection = cnx; cmd.CommandType = CommandType.Text; cmd.CommandText = sql; switch (tRequete) { case TypeRequete.Select: SqlDataReader rd = cmd.ExecuteReader(); // Affichage while (rd.Read()) { Console.WriteLine("{0} - {1} - {2}", rd["BusinessEntityID"], rd["FirstName"], rd["LastName"]); } rd.Close(); // IMPORTANT ! break; case TypeRequete.Insert: case TypeRequete.Update: case TypeRequete.Delete: cmd.ExecuteNonQuery(); break; case TypeRequete.Scalar: return(cmd.ExecuteScalar()); default: throw new Exception("Program.ModeConnecte.42"); } return(null); }
public RetourRequete SocketSendReceive(TypeRequete requete, object ObjetAEnvoyer = null, bool position = false) { string MonJson = ""; object MonObject = null; DataAEnvoyer = ObjetAEnvoyer; string MaRequeteString = GetRequete(requete); MonJson = GetRetour(MaRequeteString); if (MonJson.Contains('{')) { int Index = MonJson.IndexOf('{'); int IndexFin = (MonJson.LastIndexOf('}') + 1); string chaine = MonJson.Substring(Index, IndexFin - Index); chaine = chaine.Replace(@"\\", string.Empty); if (position) { MonObject = JsonConvert.DeserializeObject <DataPosition>(chaine); } else if (requete == TypeRequete.Ping) { MonObject = JsonConvert.DeserializeObject <Ping>(chaine); } else { MonObject = JsonConvert.DeserializeObject <Data>(chaine); } } else if (MonJson.Contains("TimeOut") || MonJson.Contains("500 Server error") || MonJson.Contains("504 Gateway Timeout") || MonJson.Contains("503 Service Temporarily Unavailable") || MonJson.Contains("408 Request Time-out")) { return(new RetourRequete(MonJson)); } return(new RetourRequete(MonObject, MonJson)); }
public bool ModeConnecte(TypeRequete tRequete, string sql) { Cmd.CommandText = sql; switch (tRequete) { case TypeRequete.Select: return(false); case TypeRequete.Update: case TypeRequete.Insert: case TypeRequete.Delete: try { Cmd.ExecuteNonQuery(); return(true); } catch (Exception) { return(false); } default: throw new Exception("Program.ModeConnecte"); } }
private string GetRequete(TypeRequete type) { //HttpRequestMessage request = new HttpRequestMessage(); string requete = ""; switch (type) { case TypeRequete.Ping: requete = "GET /PTRE839/pings?k=262166&t0=" + GetUnixNow(); break; case TypeRequete.RequestMessage: requete = "GET /PTRE839/msgs?k=" + GetKey() + "&timeout=5"; break; case TypeRequete.SendMessage: requete = "POST /PTRE839/msgs?k=" + GetKey() + "&to=" + GetKeyJ2() + "&data=" + RetourneJsonMessage(DataAEnvoyer).Replace(" ", "%20"); break; case TypeRequete.clear: requete = "DELETE /PTRE839/players/" + GetKey() + "?k=262166"; break; case TypeRequete.clearAutre: requete = "DELETE /PTRE839/players/" + GetKeyJ2() + "?k=262166"; break; default: requete = "ERROR"; break; } requete += " HTTP/1.1\r\nHost: " + Host + "\r\nContent-Length: 0\r\n\r\n"; //request.RequestUri = new Uri(requete); return(requete); }