2010-04-06 18 views
5

Ecco il mio problema. Se utilizzo un solo progetto Windows Form e chiamo solo - Settings.Default.Save() durante l'esecuzione, Mono crea un file user.config con il valore predefinito per ogni impostazione. Va bene, finora tutto bene.Mono non scrive le impostazioni predefinite

Ma ora aggiungo un progetto di libreria di classi, a cui viene fatto riferimento dal progetto Windows Form e che trasferisco le impostazioni dal progetto Windows Form alla libreria di classi. Ora faccio lo stesso - Settings.Default.Save() e con mia grande sorpresa, Mono crea un file user.config con valori EMPTY (NON quelli di default) per ogni impostazione ?! Qual è la differenza tra avere le impostazioni nel progetto Windows Forms o nella libreria di classi? E dal modo in cui non è un problema del sistema operativo. È un problema Mono, perché non funziona su Windows e Linux. Se non uso Mono tutto va bene, ma devo trasferire la mia applicazione su Linux, quindi devo usare Mono. Sono davvero frustrato, che sta bloccando un progetto :(

Edit: Se scrivo Settings.Default.Font = Settings.Default.Font; prima di chiamare il Settings.Default.Save(), allora funziona correttamente cosa è questo ?!

Grazie in anticipo per qualsiasi suggerimento che avete. .

saluti, Petar

+0

Questo sembra un bug, si prega di presentare una segnalazione di bug su https://bugzilla.novell.com/index.cgi – Dykam

risposta

1

OK, nel caso in cui qualcun altro entra in questo problema terribile, sono riuscito a aggirare in questo modo:

Settings.Default.MySetting1 = Settings.Default.MySetting1; 
Settings.Default.MySetting2 = Settings.Default.MySetting2; 
......................................................... 
Settings.Default.MySettingN = Settings.Default.MySettingN; 

Eseguo questo codice all'avvio dell'applicazione.

0

Da uno sviluppatore mono "se qualcuno presenta un bug, posso correggerlo più o meno presto ;-)". Sembra una soluzione banale, basta archiviare tutte le informazioni sopra a http://bugzilla.novell.com e qualcuno sarà in grado di dare un'occhiata a questo. Se includi una piccola testcase che mostri il bug che sarebbe l'ideale in quanto può essere aggiunto alla suite di test per evitare che questo si interrompa di nuovo.

+0

OK, presenterò un bug report al più presto. –

+0

Archiviato un bug report. –

+0

Grazie per il bug report. :) – Monoman

Problemi correlati