Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione POCO F9 pro: potenza da vero top di gamma, display da 185 Hz e finalmente una fotocamera da prendere sul serio
Recensione POCO F9 pro: potenza da vero top di gamma, display da 185 Hz e finalmente una fotocamera da prendere sul serio
POCO F9 Pro arriva sul mercato con l'obiettivo di portare prestazioni da smartphone top di gamma in una fascia di prezzo "più aggressiva", senza rinunciare a un comparto fotografico finalmente all'altezza. Dopo averlo testato sul campo, emerge uno smartphone molto più completo rispetto alla generazione precedente, ma anche con alcuni piccoli compromessi che diventano difficili da ignorare quando il prezzo di listino sfiora i 1.000 euro.
Tra audio e AI: la ricetta di Qualcomm per l'agentic AI
Tra audio e AI: la ricetta di Qualcomm per l'agentic AI
Snapdragon Soung Gen 2 è la piattaforma Qualcomm per i dispositivi audio sempre più integrati nel mondo dell'intelligenza artificiale: al prorpio interno tanta potenza elaborativa per gestire al meglio le necessità d'uso dell'agentic AI
Qualcomm annuncia la nuova generazione di SoC Snapdragon 8 Elite Gen 6
Qualcomm annuncia la nuova generazione di SoC Snapdragon 8 Elite Gen 6
In occasione del proprio Snapdragon Summit Qualcomm annuncia i due nuovi chip per dispositivi mobile di fascia alta che entreranno nel mercato nel corso del 2027: tanta potenza a disposizione per elaborazioni di intelligenza artificiale sempre più complesse
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 28-10-2010, 13:48   #1
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
[Linq vs Sql]Incongruenze

Ciao a tutti

Mi trovo dinanzi ad uno strano problema, oddio, dico 'strano' forse perchè non ci arrivo da me.

Sto lavorando con Entity Framework.

Allora, se eseguo una query direttamente su sql server, vedo i risultati corretti, se invece, lato client, richiamo la query, i risultati sono diversi, mi spiego:

Codice:
//da sql server
select * from vista

Data --------- Posto ----- Numero ----- Valore
01/10/2010      poltrona          25           2,7
01/10/2010      cabina            25           0,9
02/10/2010      poltrona          25           6,1
03/10/2010      cabina            25           1,8

//etc...
Lato client invece:

Codice:
var result = (from sit in context.MyObject
     where sit.Date.Year == 2010 && sit.Date.Month == 10
     select sit);

//oppure

var result = context.MyObject.Where(sit => sit.Date.Year == 2010 && sit.Date.Month == 10);
Mi succede questo, che se la data è uguale (come nel mio caso), mi mostra:

Codice:
Data --------- Posto ----- Numero ----- Valore
01/10/2010      poltrona          25           2,7
01/10/2010      poltrona            25           2,7
02/10/2010      poltrona          25           6,1
03/10/2010      cabina            25           1,8
Ovvero, non mi mostra l'altro valore presente per lo stesso giorno.

Dove sbaglio ?

Grazie mille

RaouL.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 29-10-2010, 08:25   #2
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
uppettino
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 29-10-2010, 10:08   #3
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
edit : scusatemi... non ho risolto..
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek

Ultima modifica di RaouL_BennetH : 29-10-2010 alle 10:24.
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 29-10-2010, 15:18   #4
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Forse ho capito:

se anzichè usare una vista utilizzo una tabella, i risultati sono corretti.
Credo dipenda dal fatto che una vista non ha una chiave primaria.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 29-10-2010, 18:50   #5
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Non ho capito bene il problema.
Cosa hai, cosa sottometti e cosa ottieni?
Comunque termina la tua query sul DB con un .ToArray(), in modo da far tornare i risultati dal mondo database-funzionale a quello vettoriale (o scalare) in memoria.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.
gugoXX è offline   Rispondi citando il messaggio o parte di esso
Old 30-10-2010, 00:44   #6
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da RaouL_BennetH Guarda i messaggi
Forse ho capito:

se anzichè usare una vista utilizzo una tabella, i risultati sono corretti.
Credo dipenda dal fatto che una vista non ha una chiave primaria.
Nemmeno le tabelle sono obbligate ad avere una chiave primaria.

Credo che il problema sia un altro.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 30-10-2010, 22:00   #7
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Ciao ragazzi e grazie per avermi risposto

@gugoXX

partendo da quello che ho:

lato db, una tabella molto semplice, pari pari a quella indicata all'inizio del 3d.

Se mappo quella tabella con ef, e mi faccio restituire una lista lato client (ho provato sia con una web app che con una winforms), i risultati che vedo in output sono corretti.

Ho fatto poi una vista su quella tabella, banalmente con create view bla as select * from tabella.

Ecco, se mappo la view con ef, i risultati non sono corretti. Succede che se ci sono più eventi per una stessa data, in output ottengo soltanto gli eventi presenti in corrispondenza della prima data e non delle altre, cioè:

Codice:
30/10/2010      asd      bla    xxx
30/10/2010      asd      bla    xxx

//mentre invece dovrebbe essere
30/10/2010      asd      bla    xxx
30/10/2010      ggg      mna  123
Su sql server invece, sia che interrogo la tabella, sia che interrogo la vista, i risultati sono corretti entrambi.

Ho appena provato il metodo .ToArray() ma il risultato non cambia.


@cdimauro

Ne sono certo. Ho da poco intrapreso la mia avventura con LinQ e Entity Framework ( di cui mi sono innamorato perso!!) . E' molto vasto e al momento riesco a fare solo qualcosa di molto primitivo
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 30-10-2010, 22:47   #8
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Purtroppo non lavoro in C# per cui non saprei come darti una mano.

Posso soltanto dirti che ho realizzato in Python qualcosa di simile a LINQ & ORM (di SQL mancano soltanto le JOIN da implementare), per cui ti capisco benissimo.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 31-10-2010, 09:35   #9
khelidan1980
Senior Member
 
L'Avatar di khelidan1980
 
Iscritto dal: Mar 2005
Città: Morimondo city
Messaggi: 5491
Quote:
Originariamente inviato da cdimauro Guarda i messaggi
Purtroppo non lavoro in C# per cui non saprei come darti una mano.

Posso soltanto dirti che ho realizzato in Python qualcosa di simile a LINQ & ORM (di SQL mancano soltanto le JOIN da implementare), per cui ti capisco benissimo.
Ma dormi anche te??

Ps: scusate l'OT!
__________________
Khelidan
khelidan1980 è offline   Rispondi citando il messaggio o parte di esso
Old 31-10-2010, 14:53   #10
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Dormire è parola grossa per un papà.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 03-11-2010, 15:17   #11
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
ragazzi, non riesco a venirne a capo

E' assurdo. Devo ricorrere ad una stored perchè dalla vista i dati non li tiro fuori.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2010, 21:03   #12
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Quote:
Originariamente inviato da RaouL_BennetH Guarda i messaggi
ragazzi, non riesco a venirne a capo

E' assurdo. Devo ricorrere ad una stored perchè dalla vista i dati non li tiro fuori.
Il problema e' ovviamente non replicabile da qui, dato che se quanto hai descritto e' corretto, il risultato e' ovviamente errato.
Non ho pero' capito perche' tu debba passare attraverso una alternativa stored procedure, dato che e' una filosofia un poì contraria, seppur compatibile, con LINQ
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.
gugoXX è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2010, 22:37   #13
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Quote:
Originariamente inviato da gugoXX Guarda i messaggi
Il problema e' ovviamente non replicabile da qui, dato che se quanto hai descritto e' corretto, il risultato e' ovviamente errato.
Non ho pero' capito perche' tu debba passare attraverso una alternativa stored procedure, dato che e' una filosofia un poì contraria, seppur compatibile, con LINQ
Ciao gugoXX

Domani posto l'intera struttura "incriminata", io sono sicuro di aver sbagliato qualcosa o nella creazione della vista o nel come sto utilizzando ef o, cosa ancora più probabile, ho sbagliato entrambe le cose.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione POCO F9 pro: potenza da vero top di gamma, display da 185 Hz e finalmente una fotocamera da prendere sul serio Recensione POCO F9 pro: potenza da vero top di g...
Tra audio e AI: la ricetta di Qualcomm per l'agentic AI Tra audio e AI: la ricetta di Qualcomm per l'age...
Qualcomm annuncia la nuova generazione di SoC Snapdragon 8 Elite Gen 6 Qualcomm annuncia la nuova generazione di SoC Sn...
realme 16 Pro Harry Potter Edition: il nuovo midrange ha uno stemma di Hogwarts che cambia colore al sole! realme 16 Pro Harry Potter Edition: il nuovo mid...
Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce Recensione REDMI Note 17 Pro: il midrange con ba...
Gemini 4 è quasi pronto: il lanci...
GTA 6, Rockstar lancia il box da collezi...
Microsoft è il caso 'Microslop': cosa si...
Dreame H15 Pro Heat crolla da 599€ a 419...
BYD prepara una berlina elettrica ultra-...
Claude si ottimizza da solo, e adesso è ...
Internet a casa: quanta velocità ...
Titan Quest 2 ha una data di uscita uffi...
Sony ULT FIELD 1, cassa bluetooth in off...
Noctua e Forced Physics insieme per rivo...
Diesel Euro 5, slitta al 2027 il blocco ...
Copilot+ PC è morto? I nuovi Surf...
Nintendo vince causa da 4,5 milioni di d...
Google porta l'AI nello spazio: il primo...
Opera: la VPN gratuita si accende in aut...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 08:15.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v