2010-08-04 13 views
6

Ho un progetto che utilizza dataset fortemente tipizzati.Set di dati fortemente tipizzati e modifiche dello schema

Supponiamo di voler modificare lo schema del database del database utilizzato da questa applicazione. Ho una tabella denominata Paese e voglio aggiungere una nuova colonna denominata "IsADemocracy" (che è un esempio) del tipo di dati BIT di SQL Server.

Ora, come aggiornare il set di dati fortemente tipizzato in modo che possa utilizzare questo nuovo campo nell'applicazione?

Ho provato ad aggiungere la colonna nella tabella Paese del set di dati, gli ho dato il tipo di booleano e mappato la sua proprietà "Origine" a "IsADemocracy".

Posso accedere al campo dell'applicazione, dargli un valore, ecc., Ma le query sottostanti create dall'adattatore di tabella non sono state aggiornate per riflettere questa modifica. Sono come erano prima che aggiungessi questa colonna nel dataset fortemente tipizzato. Spero che quello che ho fatto sia stato sufficiente ma non sembra essere il caso.

Devo rigenerare in qualche modo le classi di dati fortemente? Se sì, come e quali sono le implicazioni?

Probabilmente potrei eliminare la tabella Paese nella finestra di progettazione del set di dati e ridurla da Esplora server, ma su di essa sono presenti query dei clienti e non voglio perderle.

Grazie.

risposta

1
  1. prima cosa, assicurarsi di avere un backup

  2. Fare clic destro sul nodo .xsd in Solution Explorer e selezionare "Esegui strumento personalizzato"

Ma attenzione con la vostra abitudine Interrogazioni. Hanno la tendenza a sparire senza preavviso. Non sempre.

Questa è una buona ragione per inserire queste query nel file 'principale' della classe parziale.

+0

Spiacente, ho provato lo strumento Esegui personalizzato e non sembra che aggiorni le classi. Ho anche provato a rinominare il tavolo e l'adattatore da tavolo nel designer come suggerisce questo sito (http://www.devfuel.com/2007/03/strongly-typed-dataset-force-refresh-of.html), ma non lo fa essere aggiornato –

+1

Sì, hai ragione. Lo strumento personalizzato (WSDL) non legge di nuovo lo schema db. Dovrai ricostruire di nuovo ogni adattatore (modificato) (fai clic con il tasto destro del mouse, configura). Si noti che questo è un modo sicuro per perdere le personalizzazioni alle query CRUD. –

+0

I dataset tipizzati non sono molto carini quando lo schema cambia. –

2

Un altro suggerimento: fare clic con il tasto destro del mouse sulla rappresentazione della tabella nel progettista, cioè su xsd, e utilizzare l'opzione Aggiungi per aggiungere una colonna. Una volta che hai la colonna, devi impostare le sue proprietà come per impostazione predefinita una nuova colonna viene aggiunta come una stringa. Facendolo in questo modo puoi conservare qualsiasi query personalizzata ecc. Che è stata aggiunta in precedenza.

Ciò consente di aggiungere colonne, ovviamente l'eliminazione è più semplice.

Problemi correlati