Titel und Kurzbeschreibung beschreiben es schon recht treffend.
Wie koennte man public void RemoveHWPair eleganter loesen?
Sollte aber schon 'ne kleine, compacte Abfrage bleiben.
Ein Lambda-Ausdruck waere sicher fein - nur da fehlt's an der Fertigkeit.
Ein for-each - Construckt kommt eher nicht in frage, allein schon weil es als
Alternative so unschoen aussieht...
var moecht ich (eigentlich) auch nicht verwenden, zumal der Rueckgabetyp auch IEnumerable ist.
Jemand eine Idee?
joar...
...ach ja, weils scho wieder soweit ist und auch sonst so...: Frohes Neues.
using System; using System.Collections.Generic; using System.Threading; using System.Linq; namespace Sensorium_v001 { class Controller { internal struct HWPair { public Sensor Sensor { get; } public Ventil Ventil { get; } public HWPair(Sensor sensor, Ventil ventil) { this.Sensor = sensor; this.Ventil = ventil; } } private List<HWPair> hWPairs; public Controller() { hWPairs = new List<HWPair>(); } public void AddHWPair(Sensor sensor, Ventil ventil) { hWPairs.Add(new HWPair(sensor, ventil)); } public void RemoveHWPair(string sensorName) { IEnumerable<HWPair> myQuery = from HWPair in hWPairs where HWPair.Sensor.SensorName == sensorName select HWPair; hWPairs.Remove(myQuery.First()); } } }
Dieser Beitrag wurde von nobido bearbeitet: 05. Januar 2021 - 16:50