2010-11-13 18 views
6

Ho lavorato con l'OData e ho capito che gli URI sono sensibili al maiuscolo/minuscolo. .../Northwind.svc/Products! = .../Northwind.svc/products È stato eseguito di proposito? c'è un modo per renderlo insensibile alle maiuscole e minuscole?OData e distinzione tra maiuscole e minuscole

risposta

3

La soluzione consigliata è usare sia per le funzioni supportate OData toupper o tolower per risolvere i problemi di sensibilità caso (quando si utilizza un comando filter$) e ottenere il set di risultati completo.

ho scritto un breve post per spiegare questo un po 'più nel dettaglio:
Dealing With Case Sensitivity in OData

+3

Mi piace il tuo write-up, ma 'toupper' e' tolower 'sono disponibili solo quando ci si trova all'interno di un'espressione' $ filter'. Nella domanda originale, il poster stava cercando di non distinguere tra maiuscole e minuscole da un'entità impostata nella porzione di percorso dell'URI. –

+0

@JenS - yo hai ragione. L'ho letto troppo velocemente e mi sono concentrato sul titolo della domanda in cui mi sono imbattuto nel numero di oggi. Se è fuori linea, posso sicuramente cancellarlo. – atconway

+0

No, penso che il tuo post aggiunga valore (specialmente dato il titolo attuale della domanda e quello che gli altri potrebbero cercare). Voglio solo che le persone siano consapevoli che non risolverà il problema della distinzione tra maiuscole e minuscole di un insieme di entità. –

0

Ecco un esempio:?/Persone $ filter = tolower (Nome) eq tolower ('James') - questo restituirebbe voi tutte le persone con nome sono 'James' (case insensitive, potrebbero essere 'JAMES', 'james', 'JamES', ecc. Spero che questo aiuti

+0

molto tempo dopo nitpick: non funzionerebbe, dato che "john" non è neanche lontanamente "james", a prescindere dai casi che scegli. Mio fratello "James" e io non siamo assolutamente equivalenti: D –

Problemi correlati