2016-03-31 19 views
0

Wie konvertiert man am besten eine Null-Zeichenfolge (die in eine URL übergeben wurde) mithilfe von Attributrouting in WebApi in einen Nullwert?WebApi - Konvertieren von Nullzeichenfolgen in Nullwerte

URL Beispiel:

localhost: 29365/api/MyController/Test/erste/null/dritte

Api Controller-Methode Beispiel:

[HttpGet] 
[Route("~/api/MyController/Test/{first}/{second}/{third}")] 
public void Test(string first, string second, string third) 
{ ... } 
+0

Sie wollen Null-Wert als "Null" in Ihrem Parameter –

Antwort

0

Nun ist Ihre einzige Option würde vergleichen, wenn der Zeichenfolgenwert null ist. Das scheint jedoch schrecklich zu sein.

Warum nicht versuchen, als Parameter zu übergeben.

[HttpGet] 
[Route("~/api/MyController/Test")] 
public void Test(string first = null, string second = null, string third = null) 
{ ... } 

URL Probe

localhost: 29365/api/MyController/Test first = myfirstvalue & dritten = mythirdvalue

Durch den zweiten Wert liefert es standardmäßig null ist.

+0

Ich habe darüber nachgedacht, aber Anfragen werden mit 'Null' Zeichenfolge innerhalb gesendet und leider kann ich nicht ändern, wie es funktioniert. – turibbio

+1

Wenn Sie keine Kontrolle über die Quelle der URL haben, dann haben Sie keine Wahl. Sie müssen nur einen einfachen String-Vergleich durchführen. – CathalMF