P
Polly Anna
Hi,
I have previously used EL v 3.1 Exception Handling application block
successfully. I thought I would now try to do the same with EL v 4.0. My
first experiment was to replace an exception.
I created a project and added the following references -
1/ Enterprise Library Exception Handling Application Block v 4.0
(Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.dll)
2/ Enterprise Library Shared v 4.0
(Microsoft.Practices.EnterpriseLibrary.Common.dll)
3/ Microsoft.Practices.ObjectBuilder v 1.0.51206.0 (then I tried version 2
as well)(Microsoft.Practices.ObjectBuilder.dll)
I then used the Configuration Manager to create the app.config file and add
the
Replace Handler to my new policy.
I then added simple code in my application (see below) that uses the
ExceptionPolicy.HandleException of EL.
Unfortunately I get the error below and I can't figure out what is wrong.
Please can someone point me in the right direction. I really would
appreciate any help.
Kind regards,
Polly Anna
Application Code -
Dim i, j, k As Decimal
Dim booRethrow As Boolean
Try
i = 1
j = 0
k = i / j
Catch ex As Exception
Try
booRethrow = ExceptionPolicy.HandleException(ex, "Replace
Policy")
If booRethrow Then Throw
txtMessage.Text = ex.ToString
Catch ex2 As Exception
txtMessage.Text = ex2.ToString
End Try
End Try
End Sub
Error Message -
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionHandlingException:
The current build operation (build key Build
Key[Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicyImpl,
Replace Policy]) failed: The type
'Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.WCF.FaultContractWrapperException,
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.WCF, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35' cannot be resolved. Please
verify the spelling is correct or that the full type name is provided.
(Strategy type
Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.ConfiguredObjectStrategy,
index 2) ---> Microsoft.Practices.ObjectBuilder2.BuildFailedException: The
current build operation (build key Build
Key[Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicyImpl,
Replace Policy]) failed: The type
'Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.WCF.FaultContractWrapperException,
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.WCF, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35' cannot be resolved. Please
verify the spelling is correct or that the full type name is provided.
(Strategy type
Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.ConfiguredObjectStrategy,
index 2) ---> System.ArgumentException: The type
'Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.WCF.FaultContractWrapperException,
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.WCF, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35' cannot be resolved. Please
verify the spelling is correct or that the full type name is provided.
at
Microsoft.Practices.EnterpriseLibrary.Common.Configuration.AssemblyQualifiedTypeNameConverter.ConvertFrom(ITypeDescriptorContext
context, CultureInfo culture, Object value)
at System.ComponentModel.TypeConverter.ConvertFrom(Object value)
at
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.Configuration.ReplaceHandlerData.get_ReplaceExceptionType()
at
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.Configuration.ReplaceHandlerAssembler.Assemble(IBuilderContext
context, ExceptionHandlerData objectConfiguration, IConfigurationSource
configurationSource, ConfigurationReflectionCache reflectionCache)
at
Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.AssemblerBasedObjectFactory`2.Create(IBuilderContext
context, TConfiguration objectConfiguration, IConfigurationSource
configurationSource, ConfigurationReflectionCache reflectionCache)
at
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicyEntryCustomFactory.Create(IBuilderContext
context, ExceptionTypeData objectConfiguration, IConfigurationSource
configurationSource, ConfigurationReflectionCache reflectionCache)
at
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicyCustomFactory.CreateObject(IBuilderContext
context, String name, IConfigurationSource configurationSource,
ConfigurationReflectionCache reflectionCache)
at
Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.ConfiguredObjectStrategy.PreBuildUp(IBuilderContext context)
at
Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(IBuilderContext context)
--- End of inner exception stack trace ---
at
Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(IBuilderContext context)
at Microsoft.Practices.ObjectBuilder2.Builder.BuildUp(IReadWriteLocator
locator, ILifetimeContainer lifetime, IPolicyList policies, IStrategyChain
strategies, Object buildKey, Object existing)
at
Microsoft.Practices.ObjectBuilder2.Builder.BuildUp[TTypeToBuild](IReadWriteLocator
locator, ILifetimeContainer lifetime, IPolicyList policies, IStrategyChain
strategies, Object buildKey, Object existing)
at
Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.EnterpriseLibraryFactory.BuildUp[T](IReadWriteLocator
locator, ILifetimeContainer lifetimeContainer, String id,
IConfigurationSource configurationSource)
at
Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.LocatorNameTypeFactoryBase`1.Create(String name)
at
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicy.GetExceptionPolicy(Exception
exception, String policyName, ExceptionPolicyFactory factory)
--- End of inner exception stack trace ---
at
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicy.GetExceptionPolicy(Exception
exception, String policyName, ExceptionPolicyFactory factory)
at
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicy.HandleException(Exception
exceptionToHandle, String policyName, ExceptionPolicyFactory policyFactory)
at
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicy.HandleException(Exception exceptionToHandle, String policyName)
at EHAB4v.Form1.cmdReplace_Click(Object sender, EventArgs e) in
C:\Documents and Settings\David Woodhouse\My Documents\Visual Studio
2008\Projects\EHAB4v\EHAB4v\Form1.vb:line 21
I have previously used EL v 3.1 Exception Handling application block
successfully. I thought I would now try to do the same with EL v 4.0. My
first experiment was to replace an exception.
I created a project and added the following references -
1/ Enterprise Library Exception Handling Application Block v 4.0
(Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.dll)
2/ Enterprise Library Shared v 4.0
(Microsoft.Practices.EnterpriseLibrary.Common.dll)
3/ Microsoft.Practices.ObjectBuilder v 1.0.51206.0 (then I tried version 2
as well)(Microsoft.Practices.ObjectBuilder.dll)
I then used the Configuration Manager to create the app.config file and add
the
Replace Handler to my new policy.
I then added simple code in my application (see below) that uses the
ExceptionPolicy.HandleException of EL.
Unfortunately I get the error below and I can't figure out what is wrong.
Please can someone point me in the right direction. I really would
appreciate any help.
Kind regards,
Polly Anna
Application Code -
Dim i, j, k As Decimal
Dim booRethrow As Boolean
Try
i = 1
j = 0
k = i / j
Catch ex As Exception
Try
booRethrow = ExceptionPolicy.HandleException(ex, "Replace
Policy")
If booRethrow Then Throw
txtMessage.Text = ex.ToString
Catch ex2 As Exception
txtMessage.Text = ex2.ToString
End Try
End Try
End Sub
Error Message -
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionHandlingException:
The current build operation (build key Build
Key[Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicyImpl,
Replace Policy]) failed: The type
'Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.WCF.FaultContractWrapperException,
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.WCF, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35' cannot be resolved. Please
verify the spelling is correct or that the full type name is provided.
(Strategy type
Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.ConfiguredObjectStrategy,
index 2) ---> Microsoft.Practices.ObjectBuilder2.BuildFailedException: The
current build operation (build key Build
Key[Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicyImpl,
Replace Policy]) failed: The type
'Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.WCF.FaultContractWrapperException,
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.WCF, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35' cannot be resolved. Please
verify the spelling is correct or that the full type name is provided.
(Strategy type
Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.ConfiguredObjectStrategy,
index 2) ---> System.ArgumentException: The type
'Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.WCF.FaultContractWrapperException,
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.WCF, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35' cannot be resolved. Please
verify the spelling is correct or that the full type name is provided.
at
Microsoft.Practices.EnterpriseLibrary.Common.Configuration.AssemblyQualifiedTypeNameConverter.ConvertFrom(ITypeDescriptorContext
context, CultureInfo culture, Object value)
at System.ComponentModel.TypeConverter.ConvertFrom(Object value)
at
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.Configuration.ReplaceHandlerData.get_ReplaceExceptionType()
at
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.Configuration.ReplaceHandlerAssembler.Assemble(IBuilderContext
context, ExceptionHandlerData objectConfiguration, IConfigurationSource
configurationSource, ConfigurationReflectionCache reflectionCache)
at
Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.AssemblerBasedObjectFactory`2.Create(IBuilderContext
context, TConfiguration objectConfiguration, IConfigurationSource
configurationSource, ConfigurationReflectionCache reflectionCache)
at
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicyEntryCustomFactory.Create(IBuilderContext
context, ExceptionTypeData objectConfiguration, IConfigurationSource
configurationSource, ConfigurationReflectionCache reflectionCache)
at
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicyCustomFactory.CreateObject(IBuilderContext
context, String name, IConfigurationSource configurationSource,
ConfigurationReflectionCache reflectionCache)
at
Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.ConfiguredObjectStrategy.PreBuildUp(IBuilderContext context)
at
Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(IBuilderContext context)
--- End of inner exception stack trace ---
at
Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(IBuilderContext context)
at Microsoft.Practices.ObjectBuilder2.Builder.BuildUp(IReadWriteLocator
locator, ILifetimeContainer lifetime, IPolicyList policies, IStrategyChain
strategies, Object buildKey, Object existing)
at
Microsoft.Practices.ObjectBuilder2.Builder.BuildUp[TTypeToBuild](IReadWriteLocator
locator, ILifetimeContainer lifetime, IPolicyList policies, IStrategyChain
strategies, Object buildKey, Object existing)
at
Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.EnterpriseLibraryFactory.BuildUp[T](IReadWriteLocator
locator, ILifetimeContainer lifetimeContainer, String id,
IConfigurationSource configurationSource)
at
Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.LocatorNameTypeFactoryBase`1.Create(String name)
at
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicy.GetExceptionPolicy(Exception
exception, String policyName, ExceptionPolicyFactory factory)
--- End of inner exception stack trace ---
at
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicy.GetExceptionPolicy(Exception
exception, String policyName, ExceptionPolicyFactory factory)
at
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicy.HandleException(Exception
exceptionToHandle, String policyName, ExceptionPolicyFactory policyFactory)
at
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicy.HandleException(Exception exceptionToHandle, String policyName)
at EHAB4v.Form1.cmdReplace_Click(Object sender, EventArgs e) in
C:\Documents and Settings\David Woodhouse\My Documents\Visual Studio
2008\Projects\EHAB4v\EHAB4v\Form1.vb:line 21