2016-03-22 4 views
1

Ich codiere die Podio .Net-API mit VB, habe aber Schwierigkeiten bei der Portierung des Beispiel-C# -Codes für ein Datumsbereichs-Wörterbuchelement in das VB.Net-Äquivalent. Hier ist ein Ausschnitt aus der .NET-API-Client-Dokumentation:VB.Net-Syntax für Datumsbereichsfilter

var filter = new Dictionary<string, object> 
{ 
    {"somekey", from = new DateTime(2013, 9, 1), to = new DateTime(2013, 9, 30) } 
}; 

ich nicht in C# erlebt habe, so würde jede mögliche Hilfe in der äquivalenten VB-Syntax zu schätzen wissen.

+1

[C# VB-Wandler] (http://converter.telerik.com/) – Turnip

+0

@DaveDoknjas Ich habe „versucht“, dass – Turnip

+0

@Turnip oft Webseite: Ich habe meinen Kommentar gelöscht - ich nicht erkennen, dass der C# -Code überhaupt nicht gültig war, als ich diesen Konverter ausprobierte. –

Antwort

1

Die Online-Konverter handhaben das sehr schlecht. SLaks erwähnt, dass wir hier eine Erweiterungsmethode aufrufen könnten, die die 2 Daten in den Dictionary-Wert einfügt, aber ich konnte das nicht in C# umsetzen, also glaube ich nicht, dass das der Fall ist.

Der einzige Weg, Sinn des ursprünglichen C# -Code zu machen ist, wenn wir davon ausgehen, dass Sie entweder nicht richtig oder die API kopiert haben Dokumentation falsch war, und dass der Code sein soll:

var filter = new Dictionary<string, object>() 
{ 
    {"somekey", new { from = new DateTime(2013, 9, 1), to = new DateTime(2013, 9, 30)} } 
}; 

in diesem Fall scheint die Umwandlung ist einfach und es zu entsprechen, was für Sie gearbeitet wie in Ihrem Kommentar erwähnt:

Dim filter = New Dictionary(Of String, Object)() From { 
    { 
     "somekey", New With { 
      Key .from = New Date(2013, 9, 1), 
      Key .to = New Date(2013, 9, 30) 
     } 
    } 
} 

und der Online-Konverter erwähnt, fair zu sein, tut vorher diesem # -Code feineingestellt C umwandeln.

+0

Eigentlich, wenn dies eine Erweiterungsmethode ist, ist es unmöglich, in VB zu konvertieren. Das ist Aufgabe, nicht Gleichheit. – SLaks

+0

Vielen Dank Dave für die Antwort. In der Zwischenzeit konnte ich mit der VB.Net-Syntax für den Wörterbucheintrag arbeiten. {"Somekey", Neu mit {Key .from = fromarg, Key .to = toarg}} –

+0

@SLaks: Es ist Aufgabe, aber das ist in Ordnung innerhalb dieses VB-Konstrukts. –