Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
[C#] Stranissimo comportamento applicazione WinForm/DB Sql Server
sabato 18 aprile 2009 - 10.43
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
WilOhmsford
Profilo
| Newbie
40
messaggi | Data Invio:
sab 18 apr 2009 - 10:43
Ragazzi, qui si sfiora la fantascienza. Scusate per il titolo poco chiaro, ma sinceramente non sapevo nemmeno come definire questo "fenomeno".
Allora, per farvela breve ho una winform C# in cui inserisco dei dati in alcuni campi (semplici textbox). Alla pressione di un button il programma deve eseguirmi 4 cose:
- la memorizzazione dei dati inseriti nell'apposita tabella del database (SQL Server Express) connesso
- la creazione di una nuova tabella, sempre nello stesso DB, avente per nome il testo inserito in una delle textbox (ovviamente sempre la stessa)
- la creazione, per ora nella directory dell'eseguibile, di un file txt avente per nome lo stesso attribuito alla nuova tabella
- la stampa a video, come ulteriore conferma, in una apposita RichTextBox, dei dati appena immessi (più degli eventuali già presenti nel DB), tramite la lettura del DB effettuata con un SQLDataReader.
Il tutto, naturalmente, solo se i dati immessi non sono già presenti. In questo caso, ho già previsto un try/catch che mi restituisce un messagebox di errore.
Ora, premesso che vado ad inserire dati sempre nuovi e non duplicati, la cosa strana è che il file txt viene creato, che nella RichTextBox ricevo la stampa dei dati appena immessi (e che dunque dovrebbero essere appena stati memorizzati nel database, no?), ma... nel DB non viene memorizzato un bel niente! Inoltre non mi viene creata neanche la tabella nuova!
Beninteso che ho cliccato più volte "Aggiorna" sul database in "Esplora Server" e che ho rieseguito manualmente la query sulla tabella per visualizzarne il contenuto. Risultato: niente.
Ora, a parte il domandarsi come sia possibile "vedere" una cosa che non esiste... cosa può essere succcesso, visto che non ho modificato nemmeno una virgola del mio codice, e che fino a ieri funzionava tutto?
Spero di essere stato chiaro, per qualunque chiarimento chiedetemi; vi prego fatemi sapere perchè sto cominciando a pensare di soffrire di allucinazioni visive!
R3GM4ST3R
Profilo
| Junior Member
196
messaggi | Data Invio:
sab 18 apr 2009 - 14:37
Ciao!
Ma il database lo hai aggiunto con visual studio 2008???
Se si, controlla dall'esplora soluzioni le proprietà del file del database...Una delle voci delle proprietà è copia nella directory di output, una roba simile...questa opzione fa si che ogni volta che viene mandata in esecuzione l'applicazione da VS, il database venga ripristinato con il database "vuoto" che vedi con il visual studio!
Altra ipotesi, è che stai usando le transazioni e non esegui il commit alla fine di fare le insert, così facendo non "salvi" le modifiche nel database.
Fammi sapere!
Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa. (Albert Einstein)
WilOhmsford
Profilo
| Newbie
40
messaggi | Data Invio:
sab 18 apr 2009 - 16:02
Ciao, grazie per avermi risposto.
Dunque, sì, il database l' ho aggiunto a progetto nuovo, ma in Visual Studio 2005. In "Proprietà", alla voce "copia nella directory di output" ho il valore "copia sempre". Per scrupolo ho provato anche le altre due voci; con "non copiare", appena avvio il debug mi restituisce subito un errore JIT; con "copia se più recente" invece, non cambia nulla.
Infine, non uso transazioni.
Domanda stupidotta: può essere che si sia corrotto qualche file? E se sì, c'è un modo per riparare che non sia riscrivere tutto quanto daccapo? (chiedo questo perchè il comando "Rigenera tutto" non porta ad alcun risultato...)
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !