Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 28.12.2015
Сообщений: 9

Получение отправка данных на сервер

11.09.2016, 08:09. Показов 611. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет, такой вопрос, у меня есть винформы(я мог и другое взять но решил с этим) и это клиент - серверное приложение, а также есть есть паттерн наблюдатель, который обновляет информацию о рандомных изменениях силы тока и напряжения...

Вот код только наблюдателя...
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApplication12
{
    class Program
    {
            static void Main(string[] args)
            {
                Stock stock = new Stock();
                Bank bank = new Bank("ЮнитБанк", stock);
                Broker broker = new Broker("Иван Иваныч", stock);
                // имитация торгов
                stock.Market();
                // брокер прекращает наблюдать за торгами
                broker.Stop();
               
 
                Console.Read();
            }
        }
 
        interface IObserver
        {
            void Update(Object ob);
        }
 
        interface IObservable
        {
            void RegisterObserver(IObserver o);
            void RemoveObserver(IObserver o);
            void NotifyObservers();
        }
 
        class Stock : IObservable
        {
            StockInfo sInfo; // информация о торгах
 
            List<IObserver> observers;
            public Stock()
            {
                observers = new List<IObserver>();
                sInfo = new StockInfo();
            }
            public void RegisterObserver(IObserver o)
            {
                observers.Add(o);
            }
 
            public void RemoveObserver(IObserver o)
            {
                observers.Remove(o);
            }
 
            public void NotifyObservers()
            {
                foreach (IObserver o in observers)
                {
                    o.Update(sInfo);
                }
            }
 
            public void Market()
            {
                Random rnd = new Random();
                sInfo.Tok = rnd.Next(20, 40);
                sInfo.Voltage = rnd.Next(30, 50);
                NotifyObservers();
            }
        }
 
        class StockInfo
        {
            public int Tok { get; set; }
            public int Voltage{ get; set; }
        }
 
        class Broker : IObserver
        {
            public string Name { get; set; }
            IObservable stock;
            public Broker(string name, IObservable obs)
            {
                this.Name = name;
                stock = obs;
                stock.RegisterObserver(this);
            }
            public void Update(object ob)
            {
                StockInfo sInfo = (StockInfo)ob;
 
                    Console.WriteLine("Ток : {1}", this.Name, sInfo.Tok);
            }
            public void Stop()
            {
                stock.RemoveObserver(this);
                stock = null;
            }
        }
 
        class Bank : IObserver
        {
            public string Name { get; set; }
            IObservable stock;
            public Bank(string name, IObservable obs)
            {
                this.Name = name;
                stock = obs;
                stock.RegisterObserver(this);
            }
            public void Update(object ob)
            {
                StockInfo sInfo = (StockInfo)ob;
 
                
                    Console.WriteLine("Напряжение {1}", this.Name, sInfo.Voltage);
                   }
        }
    }
Не обращайте на переменные некоторые как называются, это я учился и учусь .. Это будет храниться на сервере, но когда я вставляю в сервер это все я не могу наследовать данные переменной...

Это сервер вместе с наблюдателем, он занесен просто в класс
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
// SocketServer.cs
using System;
using System.Text;
using System.Net;
using System.Net.Sockets;
using System.Collections.Generic;
 
namespace SocketServer
{
 
        interface IObserver
        {
            void Update(Object ob);
        }
 
        interface IObservable
        {
            void RegisterObserver(IObserver o);
            void RemoveObserver(IObserver o);
            void NotifyObservers();
        }
 
        class Stock : IObservable
        {
            StockInfo sInfo; // информация о торгах
 
            List<IObserver> observers;
            public Stock()
            {
                observers = new List<IObserver>();
                sInfo = new StockInfo();
            }
            public void RegisterObserver(IObserver o)
            {
                observers.Add(o);
            }
 
            public void RemoveObserver(IObserver o)
            {
                observers.Remove(o);
            }
 
            public void NotifyObservers()
            {
                foreach (IObserver o in observers)
                {
                    o.Update(sInfo);
                }
            }
 
            public void Market()
            {
                Random rnd = new Random();
                sInfo.Tok = rnd.Next(20, 40);
                sInfo.Voltage = rnd.Next(30, 50);
                NotifyObservers();
            }
        }
 
        class StockInfo
        {
            public int Tok { get; set; }
            public int Voltage { get; set; }
        }
 
        class Broker : IObserver
        {
            public string Name { get; set; }
            IObservable stock;
            public Broker(string name, IObservable obs)
            {
                this.Name = name;
                stock = obs;
                stock.RegisterObserver(this);
            }
            public void Update(object ob)
            {
                StockInfo sInfo = (StockInfo)ob;
 
                Console.WriteLine("Ток : {1}", this.Name, sInfo.Tok);
            }
            public void Stop()
            {
                stock.RemoveObserver(this);
                stock = null;
            }
        }
 
        class Bank : IObserver
        {
            public string Name { get; set; }
            IObservable stock;
            public Bank(string name, IObservable obs)
            {
                this.Name = name;
                stock = obs;
                stock.RegisterObserver(this);
            }
            public void Update(object ob)
            {
                StockInfo sInfo = (StockInfo)ob;
 
 
                Console.WriteLine("Напряжение {1}", this.Name, sInfo.Voltage);
            }
        }
    }
 
    class Program
    {
        static void Main(string[] args)
        {
            // Устанавливаем для сокета локальную конечную точку
            IPHostEntry ipHost = Dns.GetHostEntry("localhost");
            IPAddress ipAddr = ipHost.AddressList[0];
            IPEndPoint ipEndPoint = new IPEndPoint(ipAddr, 11000);
 
            // Создаем сокет Tcp/Ip
            Socket sListener = new Socket(ipAddr.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
 
            // Назначаем сокет локальной конечной точке и слушаем входящие сокеты
            try
            {
                sListener.Bind(ipEndPoint);
                sListener.Listen(10);
 
                // Начинаем слушать соединения
                while (true)
                {
                    Console.WriteLine("Ожидаем соединение через порт {0}", ipEndPoint);
 
                    // Программа приостанавливается, ожидая входящее соединение
                    Socket handler = sListener.Accept();
                    string data = null;
 
                    // Мы дождались клиента, пытающегося с нами соединиться
 
                    byte[] bytes = new byte[1024];
                    int bytesRec = handler.Receive(bytes);
 
                    data += Encoding.UTF8.GetString(bytes, 0, bytesRec);
 
                    // Показываем данные на консоли
                    Console.Write("Полученный текст: " + data + "\n\n");
 
                    // Отправляем ответ клиенту\
                    string reply = "Спасибо за запрос в " + data.Length.ToString()
                            + " символов";
                    byte[] msg = Encoding.UTF8.GetBytes(reply);
                    handler.Send(msg);
 
                    if (data.IndexOf("<TheEnd>") > -1)
                    {
                        Console.WriteLine("Сервер завершил соединение с клиентом.");
                        break;
                    }
 
                    handler.Shutdown(SocketShutdown.Both);
                    handler.Close();
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }
            finally
            {
                Console.ReadLine();
            }
        }
    }
Проблема в том чтоя не могу передать данные Voltage и Tok в вин форму, в лэйбл, подскажите как сделать? и чтобы я мог отправить данные с клиента на сервер прибавив единицу к даннып по нажатию кнопки... в основном проблема с тем что ен передаются данные

вывести именно в лейбл.. и по нажатию конпи прибавить единицу к значению переменной и чтобы она отправилась на сервер...не могу сообразить спасибо
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.09.2016, 08:09
Ответы с готовыми решениями:

Отправка запроса на сервер, и получение ответа
Нужно сделать запрос на сайт, &quot;http://....... .php и что бы он в ответ выдал Фамилию и пароль. Помогите пожалуйста.

Работа с telnet: отправка на сервер запросов и получение от него ответов
Очень нужен пример работы с телнетом: отправлять на сервер запрос и получать от него ответы.

Отправка данных на сервер
Здравствуйте , хотел создать интернет магазин на Asp.Net Core , только не приходит в голову как с клиентской части(с сайта) отправить на...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.09.2016, 08:09
Помогаю со студенческими работами здесь

Метод Post, получение данных со страницы и отправка
Здравствуйте, есть код страницы &lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot;...

Отправка данных с сервера на сервер.
Люди, подскажите! Можно ли с помощью ASP или чего другого отправить данные (форму, поля формы) с сервера на другой сервер?

Получение капчи с сайта и отправка данных в форму на сайте
Помогите начинающему программисту. Допустим нужна программа для регистрации тут. Как это (получение капчи и отправка данных в форму)...

Отправка данных на сервер в базу данных
Помогите пожалуйста. Каким образом можно реализовать чтобы клиент вбивал данные, они отправлялись на сервер и все сохранялось в базы...

Отправка данных на сервер используя jQuery
Это возоможно? или можно только вытягивать информацию из бд?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru