39 messaggi dal 19 settembre 2005
Ciao ragazzi e grazie in anticipo per il supporto.
Ho cercato risposta ma le uniche che ho trovato sonon quelle di utilizzare OrderBy e ThenBy ma il mio caso credo sia diverso.

Ho una tabella clienti che ha due campi "Denominazione" e "Cognome"

Eseguo la prima query:
var clienti = from s in db.Clienti select s;

Ora io Dovrei ordinare i risultati in base ai campi di prima, ma combinandoli.

Esempio ho tre record:
---------------------------------
id | Denominazione | Cognome
---------------------------------
1 | Pinco | Bianchi
2 | Ceretta | Rossi
3 | Asdrubale | Verdi

il risultato di ordinamento deve essere id 3 - id 1 - id 2

Spero di essere stato chiaro...
Grazias!
perché ordinando da Denominazione Cognome dovrei ottenere 3,1,2?
Temo di non aver capito..
o forse intendi:
Asdrubale
Bianchi
Ceretta

vado un po' alla cieca. Perché non ti costruisci un terzo campo che contiene il valore più basso alfabeticamente tra denominazione e cognome e poi ordini su quello?
Modificato da manuel0081 il 20 marzo 2015 11.56 -

Ormai programmano tutti... ma la professionalità appartiene a pochi
39 messaggi dal 19 settembre 2005
Si manuel l'ordinamento è quello che hai scritto tu. Pensavo che mettendo gli id fosse più chiaro.
In merito alla soluzione proposta (aggiungere un terzo campo al db) mi sembra una buona soluzione, ma se possibile usare un alro modo, preferirei evitare di crearlo.
Intendevo di crearlo a partire dalle classi con attributo notmapped, non sul db.
Modificato da manuel0081 il 20 marzo 2015 15.02 -

Ormai programmano tutti... ma la professionalità appartiene a pochi
39 messaggi dal 19 settembre 2005
Avev già provato a dichiare una proprietà "DenominazioneVista", ma mi dava errore nell'interrogazione.
Sicuro si possa fare un OrderBy con una proprietà non presente sul Db?
Beh l'order by la puoi fare anche a posteriori su una List con un .Sort

Ormai programmano tutti... ma la professionalità appartiene a pochi
39 messaggi dal 19 settembre 2005
Considera che nella classe Cliento ho una proprietà:

public string DenominazioneVista
{

get
{
if (TipoCliente == "Rivenditore")
{
return Denominazione;
}
else
{
return Cognome + " " + Nome;
}

}
}

Come Faresti?

var clienti = db.clienti.ToList().Sort(????????)

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.