Pagina 4 di 6 primaprima ... 2 3 4 5 6 ultimoultimo
Visualizzazione dei risultati da 31 a 40 su 57
  1. #31
    Quote Originariamente inviata da optime Visualizza il messaggio
    ci riprovo, che te vai a sape' che ottengo risposta

    @jabjoint, quindi hai solo una classe Articoli?

    Ciao si per quel che so e' una. Scusami ma ero impegnato
    jabjoint

  2. #32
    ok, no problem.

    Quindi, perché ti senti a disagio nell'accedere direttamente alla classe Articoli?

  3. #33
    @ optime si.
    Ho poco tempo.
    jabjoint

  4. #34
    Quote Originariamente inviata da optime Visualizza il messaggio
    ok, no problem.

    Quindi, perché ti senti a disagio nell'accedere direttamente alla classe Articoli?
    Si, perché ho un DbSet<Articoli>.

    Quindi ho più oggetti Articoli da cui devo trarre le informazioni.
    jabjoint

  5. #35
    Quote Originariamente inviata da jabjoint Visualizza il messaggio
    Si, perché ho un DbSet<Articoli>.

    Quindi ho più oggetti Articoli da cui devo trarre le informazioni.
    Scusami, rettifico:

    Il DbSet ha più classi, Ordini, Articoli...

    Tra l'altro ho visto c'è il DbSet.Find, che non riesco a leggere però.
    jabjoint

  6. #36
    ok, quindi hai una classe Articoli, una classe Ordini, ecc. (immagino che avrai anche una classe Cliente, una classe Fornitore, ... --> suggerimento: la classe dovrebbe essere singolare perché definisce UN item)

    Queste classi descrivono item molto differenti: come ti immagini in pratica una classe universale? Per dire, nella classe Ordine avrò per esempio la data desiderata di consegna, attributo che non esiste nella classe Cliente... come ti immagini di leggere un attributo che esiste in una classe ma non in un'altra?

  7. #37
    Utente di HTML.it L'avatar di U235
    Registrato dal
    Mar 2006
    Messaggi
    1,521
    Quote Originariamente inviata da jabjoint Visualizza il messaggio
    Scusami, rettifico:

    Il DbSet ha pi� classi, Ordini, Articoli...

    Tra l'altro ho visto c'� il DbSet.Find, che non riesco a leggere per�.
    No, DbSet<TIPO> è una lista tipizzata su un tipo che viene definito quando la dichiari. Nel caso specifico hai una classe derivata da DbContex, dentro la quale dichiari le diverse proprietà di tipo DbSet<T>, dove T è una classe le cui proprietà rispecchiano (più o meno senza considerare eccezioni) le colonne della tabella del database che rappresentano. Ad esempio Ordini e Articoli. Queste proprietà DbSet<T> le dichiari tu dentro la classe derivata da DbContext. Dichiari anche le classi (T es: Articoli Ordini) che specificano le colonne, ogni colonna che usi nel modello avrà una proprietà di nome (salvo usare attributi che lo specificano diversamente) e tipo corrispondente. Quindi ogni proprietà DbSet<T> della classe derivata da DbContext avrà al suo interno un insieme di oggetti di tipo T i quali rappresenteranno le righe della tua tabella del database.
    Detto questo, che vuoi fare? Spiega nel complesso. Anche per me questa è l'ultima volta che te lo chiedo, dopo seguo l'esempio dato da altri che giustamente ti hanno ripreso, ed anche io abbandono la discussione.
    Ultima modifica di U235; 11-05-2023 a 16:25

  8. #38
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,296
    Quote Originariamente inviata da jabjoint Visualizza il messaggio
    Si, perché ho un DbSet<Articoli>.
    DbSet<Articoli> serve per estrarre le informazioni relative agli articoli caricandole da un DB, ma tu "sei a disagio perché hai DbSet<Articoli>"...
    Cosa ti rende a disagio? Il nome? Il fatto che si chiama DbSet<Articoli>? I caratteri <>? La presenza di "Articoli"?

    Lo chiedo perché onestamente, dovendo caricare dati dal DB riferiti ad articoli, il fatto di avere una classe "Articoli" e il fatto di avere una classe che si chiama DbSet (nome magari non carino, ma uno vale l'altro) che mi consente di caricare quei dati, non mi mette a disagio.

    Quote Originariamente inviata da jabjoint Visualizza il messaggio
    Quindi ho più oggetti Articoli da cui devo trarre le informazioni.
    E con ciò? Ne avessi 1, 10, 100, 1000, qual è il problema?
    Continua a non essere chiaro, e il fatto che non lo espliciti fa sì che rimanga non chiaro.

    Quote Originariamente inviata da jabjoint Visualizza il messaggio
    Scusami, rettifico:
    Il DbSet ha più classi, Ordini, Articoli...
    No, non ha più classi: non le contiene, non le possiede, non le estende, non è esteso da esse.
    Inoltre, DbSet è una classe, Ordini è una classe, Articoli è una classe.
    Sono tutte e tre classi, l'una come l'altra, e nessuna di queste *ha* altre classi.

    La terminologia degli elementi che si utilizzano è un requisito imprescindibile: se chiamiamo le cose con il nome non corretto o esprimiamo relazioni o azioni che non hanno senso, sfido che non si capisca un bel niente.

    Di fatto, nelle due risposte che hai dato, non emerge nessuna informazione nuova, ma solo confusione, che si trasferisce alla discussione, legata a disagi dalla natura imprecisata, dovuti a cause ancora ignote, legate a nomi e/o legami inesistenti tra elementi che ritieni correlati in un modo in cui non sono.

    Detto in una parola: non si capisce niente.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  9. #39
    Quote Originariamente inviata da alka Visualizza il messaggio
    DbSet<Articoli> serve per estrarre le informazioni relative agli articoli caricandole da un DB, ma tu "sei a disagio perché hai DbSet<Articoli>"...
    Cosa ti rende a disagio? Il nome? Il fatto che si chiama DbSet<Articoli>? I caratteri <>? La presenza di "Articoli"?

    Lo chiedo perché onestamente, dovendo caricare dati dal DB riferiti ad articoli, il fatto di avere una classe "Articoli" e il fatto di avere una classe che si chiama DbSet (nome magari non carino, ma uno vale l'altro) che mi consente di caricare quei dati, non mi mette a disagio.


    E con ciò? Ne avessi 1, 10, 100, 1000, qual è il problema?
    Continua a non essere chiaro, e il fatto che non lo espliciti fa sì che rimanga non chiaro.


    No, non ha più classi: non le contiene, non le possiede, non le estende, non è esteso da esse.
    Inoltre, DbSet è una classe, Ordini è una classe, Articoli è una classe.
    Sono tutte e tre classi, l'una come l'altra, e nessuna di queste *ha* altre classi.

    La terminologia degli elementi che si utilizzano è un requisito imprescindibile: se chiamiamo le cose con il nome non corretto o esprimiamo relazioni o azioni che non hanno senso, sfido che non si capisca un bel niente.

    Di fatto, nelle due risposte che hai dato, non emerge nessuna informazione nuova, ma solo confusione, che si trasferisce alla discussione, legata a disagi dalla natura imprecisata, dovuti a cause ancora ignote, legate a nomi e/o legami inesistenti tra elementi che ritieni correlati in un modo in cui non sono.

    Detto in una parola: non si capisce niente.
    Si hai certamente ragione non contiene le altre classi(forse se fossero innestate...si si potrebbe dire?), ho semplificato, erroneamente,tuttavia mi consente di ottenerle.
    Nel senso che devo passare per il DbSet per ottenerle, da quanto emerge.

    Non ho più alcun problema ho risolto con uno switch.

    La difficoltà che purtroppo non è ancora emersa cerco di chiarirla, dopodiché potrai pure chiudere la discussione.

    Il DbSet è una classe astratta che non sono riuscito ad implementare (se questo sarebbe stato utile).
    Pensavo di creare una classe che la ereditasse e modificarne poi i metodi, ad esempio del Find.

    Tuttavia il problema l'ho risolto con un metodo con parametro generico, adesso non ho tempo, domattina se riesco posto un breve codice.

    Quello che non riuscivo a fare era convertire l'oggetto generico ottenuto con la Reflection in una classe DbSet<classeSpecifica>.

    Adesso tutto funziona. Anche se ho dovuto passare dal metodo generico senza riuscire a risolvere il problema alla radice ma bypassandolo attraverso il metodo ToList() che restituisce una lista. Questa l'ho parametrizzata e resa generica.

    Sicuramente sarà poco chiaro. Ma quel che conta è che sono riuscito a scrivere poco codice grazie alla reflection..


    Saluti e grazie a chi ha voluto contribuire in modo ottimista.
    Ultima modifica di jabjoint; 11-05-2023 a 19:26
    jabjoint

  10. #40
    Purtroppo la classe generica parametrizzata DbSet<T> non sono riuscito ad usarla, ed ho dovuto usare List<T>.
    jabjoint

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.