PDA

View Full Version : [WPF] Errore in Design Mode


robertino_salemi
24-04-2015, 17:27
Buonasera,
nel mio UserControl ho il seguente metodo:


private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
if (LicenseManager.UsageMode != LicenseUsageMode.Designtime)
{
if (_operation.Equals(Definition.SampleDetailOperation.Insert))
{
if(DomainData.GetApplicationVar(ApplicationVars.SmplDefaultPriority) != null)
{
cmbSamplePriority.SelectedValue = DomainData.GetApplicationVar(ApplicationVars.SmplDefaultPriority).Value;
}
}
}
}


A RunTime funziona, ma in DesignMode ho il seguente errore:

Microsoft.Practices.ObjectBuilder2.BuildFailedException
The current build operation (build key Build Key[Microsoft.Practices.EnterpriseLibrary.Data.Database, null]) failed: The value can not be null or an empty string. (Strategy type Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.ConfiguredObjectStrategy, index 2)

Nel dettaglio mi segna l'errore su:
if (DomainData.GetApplicationVar(ApplicationVars.SmplDefaultPriority) != null)

Non è corretto il check:

if (LicenseManager.UsageMode != LicenseUsageMode.Designtime)
{
//TODO
}

?

Grazie.

lishi
25-04-2015, 22:51
Eccoti un trucco

1) Apri 2 instanze di visual studio, nell'instanza 1 fai attach debugger, e scegli il processo dell'altro visual studio

2) Apri nell'instanza 2 il progetto e la form

3) ???

4) Debug nell'instanza 1 dell'errore.


Cosi su due piedi in design mode il codice che hai non è sempre tutto eseguito.

In particolare

ApplicationVars.SmplDefaultPriority

forse non è inizializzato? forse è a null?

robertino_salemi
27-04-2015, 10:21
Ciao lishi,
ho risolto così:

if (System.ComponentModel.DesignerProperties.GetIsInDesignMode(this))
return;


Verifico se sono in Debug oppure in DesignMode...

Grazie.