| |
VB.NET - Ein- und UmsteigerSchleife über alle Übergabewerte einer Function/Sub | | | Autor: Dierk | Datum: 12.06.14 22:32 |
| Hallo Leute,
Ich habe folgendes Problem.
Private Sub GoToTest()
Test(wert2:="hallo")
End Sub
Private Sub Test(Optional wert1 As String = "", Optional wert2 As String = _
"", Optional wert3 As String = "")
For Each o As ? In ?
Dim n As String = o.name
Dim w As String = o.value
Next
End Sub Das Problem steckt in Test.
Die dargestellte Schleife wäre das Wunschziel.
Ich könnte jetzt mit If ... <> "" alle werte prüfen, da ich aber teilweise 10-15 werte habe, finde ich das sehr unschön.
Ich brauche den Namen, also z.b. wert1 und des passende value.
Kennt jemand da eine Lösung? | |
Re: Schleife über alle Übergabewerte einer Function/Sub | | | Autor: Manfred X | Datum: 12.06.14 22:45 |
| Hallo!
15 optionale Parameter sind eher unschön.
Wäre eine Klasse zur Zusammenfassung dieser Parameter als Properties
nicht zweckmäßiger. Diese Klasse könnte Methoden enthalten, durch die
bestimmte Werte-Subsets abgefragt werden.
Eventuell könntest Du statt optionaler Parameter ein "ParamArray" verwenden.
Dabei muß aber im rufenden Programm die Platzierung der Werte in der
erwarteten Reihenfolge erfolgen.
Innerhalb der Routine stehen die Parameter-Werte dann als Array zur Verfügung.
| |
Re: Schleife über alle Übergabewerte einer Function/Sub | | | Autor: Dierk | Datum: 12.06.14 22:58 |
| Manfred X schrieb:
Zitat: | | Wäre eine Klasse zur Zusammenfassung dieser Parameter als Properties nicht zweckmäßiger.
| |
So mache ich es im Moment. Das funktioniert auch.
Ich möchte mir nur gerne das erstellen der Klasse als Übergabe sparen.
Eigentlich dachte ich, das mein Problem recht simple sei, aber nach diversen erfolglosen Stunden mit G...le, habe ich mir wohl etwas ungewöhnliches ausgedacht.
Parameterarray scheidet aus, da feste reihenfolge usw.
Beitrag wurde zuletzt am 12.06.14 um 22:59:18 editiert. | |
Re: Schleife über alle Übergabewerte einer Function/Sub | | | Autor: Manfred X | Datum: 12.06.14 23:11 |
| Beschreibe mal, wie es zu diesen 15 Parametern kommt.
Da es für die Parameter Standardwerte gibt und die
Routine vermutlich Methode einer Klasse ist, könnte
man - statt einer Parameter-Übergabe an diese Methode -
in der Klasse vielleicht Properties einrichten auf deren
Member die Methode zugreift.
| |
Re: Schleife über alle Übergabewerte einer Function/Sub | | | Autor: Dierk | Datum: 12.06.14 23:41 |
| Ok. Vermutlich nutze ich schon den richtigen Weg, aber trotzdem mal kurz eine Erklärung.
Es geht um das Umsetzen eine API für die Websuche.
Hier kann ich in ca 20 Bereichen suchen. Jeder bereich hat eine andere URL(suchtyp) und andere Suchparameter.
Ich habe jetzt für jeden suchtyp, via Namespace eine class "Search" erstellt welche die Suche startet.
Dazu gibt es jeweils eine Class "Query" mit den möglichen suchparametern als Propertys.
Dim s As New MeinProgram.SearchTyp.Search((New MeinProgram.SearchTyp.Query With _
{.Wert1 = "Hallo"})) Wie gesagt, funktioniert das ja auch.
Nur würde mir die direkte Übergabe Optisch besser gefallen.
Die aktuelle Auswertung erfolgt dann zentral in einer helpclass mit propertyinfo usw. der jeweiligen Queryclass.
| |
Re: Schleife über alle Übergabewerte einer Function/Sub | | | Autor: effeff | Datum: 14.06.14 13:52 |
| Warum hältst Du Deine Bereiche, URLs und Suchparameter nicht in einer Tabelle und wählst dann die geeigneten Werte aus? Vor allem kannst Du die Tabelle dann bei Bedarf schnell editieren.
EALA FREYA FRESENA | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
Neu! sevCommand 4.0
Professionelle Schaltflächen im modernen Design!
Mit nur wenigen Mausklicks statten auch Sie Ihre Anwendungen ab sofort mit grafischen Schaltflächen im modernen Look & Feel aus (WinXP, Office, Vista oder auch Windows 8), inkl. große Symbolbibliothek. Weitere InfosTipp des Monats TOP Entwickler-Paket
TOP-Preis!!
Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1605.50 EUR...
Jetzt nur 599,00 EURWeitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|