Hi,
ich arbeite mich gerade in MVVM mit WPF ein.
Das Grundprinzip hab ich glaub verstanden. (Die Business Logik muss ins ViewModel).
Ich hab mir dazu ein älteres VB Projekt von mir vorgenommen und wollte dies nun auf MVVM umbiegen.
Ich habe im Model 3 Klassen
Wollte Euch fragen, ob die 3 Klassen so in Ordnung sind für MVVM oder ob man da etwas verbessern/optimieren kann.
Ein View, um Vorgaben zu speichern hab ich mir schon mal erstellt um zu testen, wie die Verbindung vom View zum ViewModel aussieht.
Das sieht etwas komisch aus:
Bevor ich daher weiter mache, frag ich nach Eurer Meinung/Erfahrung/Tips.
Danke Euch
die Klasse MConnection:
Spoiler anzeigen
Die Klasse MServer:
Die Klasse MValue:
Verschoben. ~Trade
ich arbeite mich gerade in MVVM mit WPF ein.
Das Grundprinzip hab ich glaub verstanden. (Die Business Logik muss ins ViewModel).
Ich hab mir dazu ein älteres VB Projekt von mir vorgenommen und wollte dies nun auf MVVM umbiegen.
Ich habe im Model 3 Klassen
MConnection
, MServer
und MValue
.Wollte Euch fragen, ob die 3 Klassen so in Ordnung sind für MVVM oder ob man da etwas verbessern/optimieren kann.
Ein View, um Vorgaben zu speichern hab ich mir schon mal erstellt um zu testen, wie die Verbindung vom View zum ViewModel aussieht.
Das sieht etwas komisch aus:
Bevor ich daher weiter mache, frag ich nach Eurer Meinung/Erfahrung/Tips.
Danke Euch
die Klasse MConnection:
C#-Quellcode
- public class MConnection
- {
- MServer _Server { get; set; }
- NetworkStream _NetworkStream { get; set; }
- StreamReader _StreamReader { get; set; }
- TcpClient _TCPClient { get; set; }
- public bool IsConnected { get; set; }
- public MConnection(MServer server)
- {
- this._Server = server;
- }
- private void ConnectToServer()
- {
- _TCPClient = new TcpClient(_Server.Host, _Server.Port);
- _StreamReader = new StreamReader(_TCPClient.GetStream());
- _NetworkStream = _TCPClient.GetStream();
- _TCPClient.ReceiveTimeout = 2000;
- IsConnected = true;
- }
- private void DisconnectFromServer()
- {
- _TCPClient.Close();
- IsConnected = false;
- }
- public MValue GetMeasuredValue(string client)
- {
- ConnectToServer();
- client += Environment.NewLine;
- byte[] sendbyte = new ASCIIEncoding().GetBytes(client);
- _NetworkStream.Write(sendbyte,0,sendbyte.Length);
- _NetworkStream.Flush();
- string result = null;
- result = _StreamReader.ReadLine();
- DisconnectFromServer();
- bool isvalid = false;
- string tempstring = null;
- string[] temparray = result.Split(';');
- for (int i = 0; i < temparray.Length -1;)
- {
- if (temparray[i].StartsWith("valid"))
- if (temparray[i].Substring(6).Equals("1"))
- isvalid = true;
- if (temparray[i].StartsWith("value"))
- tempstring = temparray[i].Substring(6);
- }
- NumberFormatInfo numberformat = new NumberFormatInfo();
- numberformat.NumberDecimalSeparator = ".";
- double doubleresult = double.Parse(tempstring, numberformat);
- return new MValue(doubleresult, isvalid);
- }
- }
Die Klasse MServer:
Die Klasse MValue:
Verschoben. ~Trade
"Hier könnte Ihre Werbung stehen..."
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Trade“ ()