Visualizzazione dei risultati da 1 a 10 su 58

Visualizzazione discussione

  1. #10
    Utente di HTML.it L'avatar di U235
    Registrato dal
    Mar 2006
    Messaggi
    1,539
    Quote Originariamente inviata da jabjoint Visualizza il messaggio
    @U235:



    Probabimente non è semplice allora come credevo.

    Vediamo se riuscite a capire od io a spiegarmi meglio.

    La tua potrebbe essere una soluzione.

    Ma a me occorrono fortunatamente solo le proprietà di ogni classe C che qui sta per Articoli.

    Non so se è obbligatorio, ma generalmente per accedere alle precise proprietà di un oggetto occorre convertire l'oggeto generico che nell'esempio è objX nel oggetto particolare di cui si vogliono le proprietà.
    Altrimenti come dici tutto si complica, e dovrei scartare tutte le proprietà inutili.

    Ovviamente ho più classi Articoli(DbSet<Articoli>), ma il concetto rimane quello.
    Non penso che nel 2023 queste cose siano irrisolte o poche funzionanti/ottimizzate
    Ok, il punto è: come vuoi poi utilizzare "y" del tuo esempio? se non conosci a priori cosa chiamare di y perché non è noto in compilazione, allora giustamente non ti serve fare poi il cast senza conoscere che fare con quell'oggetto... Mi potresti rispondere (suppongo... ma è questo quello su cui mi sembra che sia reticente) che tutte le classi hanno una proprietà "ID" di tipo int, in questo caso qualsiasi classe creata a partire da una tabella avrà la proprietà ID, quindi tu da "y" vuoi ricavare l'ID (a prescindere dal tipo, che sia Articoli oppure Ordini). In questo caso ci sarebbe una spiegazione, ma il modo migliore di ottenerlo è diverso da quello che stai pensando tu, ovvero si dovrebbe creare una classe base la quale andrebbero ad ereditare tutte le entità (tabelle), e tu fai il cast alla classe base. Puoi anche utilizzare le interfacce al posto di classi base, in questo modo potrai lavorare con più "derivazioni" o se ad esempio le classi già ereditano da altre classi. In ogni caso a quel punto il cast lo fai sulla classe base o sull'interfaccia e non sul tipo derivato, in quanto il tipo derivato lo dovresti conoscere in compilazione per poter fare il cast come intendi farlo tu. Da li nasce poi tutto il resto, tra cui anche sfruttare la reflection, ma soprattutto i Generics.
    Ultima modifica di U235; 10-05-2023 a 12:04

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 © 2026 vBulletin Solutions, Inc. All rights reserved.