Domanda

Sto lavorando su un sito Web di colleghi e ha erroneamente creato una vista griglia che mostra un TypeID anziché TypeName. Voglio mettere il NOME effettivo del tipo, anziché il suo numero ID arbitrario, come se lo avesse. Vedo che ha due "ObjectDataSource" nella pagina: uno per Tipo e uno per Articolo. Articoli contiene l'ID di quale TIPO è l'articolo, che è tutto nell'origine dati Articoli. Sta estraendo questo ID per popolare la visualizzazione griglia. Voglio usare quell'ID per estrarre il NAME dall'altra fonte di dati e posizionare quel NAME nella vista griglia per quella colonna specifica. Può essere fatto? Posso utilizzare due origini dati diverse su una griglia?

È stato utile?

Soluzione

Se capisco questo diritto, quello che hai sono due fonti di dati che lo fanno:

1) SELECT ID, Item, ItemTypeID FROM Item
2) SELECT ID, ItemType FROM ItemTypes 

E vuoi che il nome e il tipo di elemento vengano visualizzati nella tua griglia.

Per rispondere alla tua domanda fondamentale se puoi utilizzare entrambe le fonti sulla griglia: sì. Ma questo non è il modo più efficiente per eseguire l'operazione, dato che dovresti camminare sulla seconda fonte di dati per ogni riga della prima.

Un modo migliore sarebbe quello di unire le due origini dati insieme e averne solo una.

Modifica l'istruzione SELECT per il primo datasrouce in modo che sia qualcosa del genere:

SELECT i.ID, i.Item, t.ItemType FROM Item i INNER JOIN ItemTypes t ON i.ItemTypeId = t.ID;
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top