der henry: C# ref übergabe

Beitrag lesen

Hallo Rolf,

je länger ich meinen Beitrag lese, desto verwirrter werde ich selbst.

Ich hoffe hier besser erklärt.

Ich habe eine Funktion Reader.Read() die vor dem eigentlichen lesen, über eine Schleife mit Daten Reader.Add versorgt wird.

Beim Aufruf von Reader.Add muss ich jeweils eine Referenz (Doku: ref T[] Buffer) übergeben in die, nach dem Aufrufer Reader.Read, meine "gelesenden Daten" stehen.

Um eine Zuordnung zu bekommen, habe ich ein Dictionary, mit Array erstellt. Bei jedem Schleifendurchgang füge ich einen "record" zum Dictionary hinzu, das einen Namen (Plcvarname) und einen value="" enthält.

Diesen "record" des Dictionary bzw. die Referenz zum jeweiligen Wert des "records" möchte ich an die Funktion Reader.Add übergeben. Damit habe ich Namen und Wert und die Zuordnung passt.

		
Dictionary<string, string[]> plcreturns = new Dictionary<string, string[]>();

for-Schleife
{

	// Speicherbereich für Rückgabe vorbereiten
		plcreturns.Add(record.Plcvarname, new string[] {""});
				
		Reader.Add(
				readmemtype(record.Datatyp, record.Plcvarname),	
				readformat(record.Format, record.Plcvarname),
				record.Db,	
				record.dataoffset,	
				(int) 1,
				ref plcreturns[record.Plcvarname][0]
  		);
			
};			

int result = Reader.Read(); 			

Die Referenzübergabe ref plcreturns[record.Plcvarname][0] funktioniert nicht

Vllt liege ich komplett falsch und es gibt eine bessere Lösung ....

Vielen Dank !!