MonitoringCashierPage.xaml.cs 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. using Newtonsoft.Json;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Net;
  6. using System.Net.Sockets;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows;
  10. using System.Windows.Controls;
  11. using System.Windows.Data;
  12. using System.Windows.Documents;
  13. using System.Windows.Input;
  14. using System.Windows.Media;
  15. using System.Windows.Media.Imaging;
  16. using System.Windows.Navigation;
  17. using System.Windows.Shapes;
  18. namespace StoreServer
  19. {
  20. /// <summary>
  21. /// Interaction logic for MonitoringCashierPage.xaml
  22. /// </summary>
  23. public partial class MonitoringCashierPage : Page
  24. {
  25. public MonitoringCashierPage()
  26. {
  27. InitializeComponent();
  28. }
  29. public void GetDataOfStartCashier(RootDataOfCashier FindCashier)
  30. {
  31. }
  32. public async void StartServer()
  33. {
  34. IPEndPoint iPEndPoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"), Helper.FindStore.StoreID);
  35. Socket Listener = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
  36. Listener.Bind(iPEndPoint);
  37. Listener.Listen(10);
  38. while (true)
  39. {
  40. Socket SocketClient = Listener.Accept();
  41. StringBuilder stringBuilder = new StringBuilder();
  42. byte[] data = new byte[256];
  43. int bytes = 0;
  44. do
  45. {
  46. bytes = SocketClient.Receive(data, data.Length,0);
  47. stringBuilder = stringBuilder.Append(Encoding.UTF8.GetString(data, 0, bytes));
  48. } while (SocketClient.Available >0);
  49. RootDataOfCashier rootDataOfCashier = JsonConvert.DeserializeObject<RootDataOfCashier>(stringBuilder.ToString());
  50. }
  51. }
  52. }
  53. }