Domanda

Come posso cambiare la tabella di codici che voglio usare su un'operazione come quella qui sotto?

string foo = (string)sqlCommand.ExecuteScalar();

A quanto ho capito che posso avvolgere la chiamata di metodo all'interno di una String.Format(IFormatProvider, String). Sarebbe grandioso.

Ma come faccio a costruire un IFormatProvider con una tabella codici specifica in modo da poter leggere correttamente questo particolare i dati dal mio database archiviati in una tabella codici diversa rispetto al resto del file di database?

Maggiori informazioni :
- Il database è un database SQLite
. - I dati sono in portoghese
. - Dati che sto aggiungendo al database mostra esternamente in modo non corretto sulla mia domanda
. -. Dati che aggiungo correttamente attraverso i miei applicazione visualizza

Credo di aver rintracciato giù al fatto penso che sto aggiungendo i dati in formato UTF-8 quando si fa attraverso la mia domanda. Sto utilizzando System.Data.SQLite provider e sto può indagare ulteriormente come posso cambiare questo comportamento . In qualsiasi caso, vorrei per il momento per leggere i dati che viene inseriti nella banca dati da fonti esterne, che non è in formato UTF-8.

È stato utile?

Soluzione

No, String.Format (ecc) è tutto a che fare con il lato client di elaborazione. Se si ha realmente bisogno di alterare come il database gestisce i dati testuali, mi aspetto che per essere parte della dichiarazione SQL o, eventualmente, la stringa di connessione. (Potrebbe essere necessario utilizzare una connessione diversa per questi particolari query.)

In .NET per sé, tutti i dati di testo sarà solo Unicode. Per essere onesti, avevo speranza che la banca dati avrebbe saputo cosa stava succedendo e gestire le differenze in sé ... ma non hanno dato i dettagli di ciò che database che si sta utilizzando o come uno tabella utilizza una codifica diversa per gli altri.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top