I have updated my project in EF 4.0 to EF 4.3.1.
However, when I create a new Context object, an exception is thrown:
Culture is not supported.
Parameter name: name
2.3.2 is an invalid culture identifier.
The complete Stack Trace:
at System.Globalization.CultureInfo..ctor(String name, Boolean useUserOverride)
at System.Globalization.CultureInfo..ctor(String name)
at System.Reflection.AssemblyName.nInit(RuntimeAssembly& assembly, Boolean forIntrospection, Boolean raiseResolveEvent)
at System.Reflection.AssemblyName..ctor(String assemblyName)
at System.Data.Metadata.Edm.MetadataAssemblyHelper.ComputeShouldFilterAssembly(Assembly assembly)
at System.Data.Common.Utils.Memoizer`2.<>c__DisplayClass2.<Evaluate>b__0()
at System.Data.Common.Utils.Memoizer`2.Result.GetValue()
at System.Data.Common.Utils.Memoizer`2.Evaluate(TArg arg)
at System.Data.Metadata.Edm.DefaultAssemblyResolver.<GetAlreadyLoadedNonSystemAssemblies>b__0(Assembly a)
at System.Linq.Enumerable.WhereArrayIterator`1.MoveNext()
at System.Data.Metadata.Edm.DefaultAssemblyResolver.GetAllDiscoverableAssemblies()
at System.Data.Metadata.Edm.DefaultAssemblyResolver.GetWildcardAssemblies()
at System.Data.Metadata.Edm.MetadataArtifactLoaderCompositeResource.LoadResources(String assemblyName, String resourceName, ICollection`1 uriRegistry, MetadataArtifactAssemblyResolver resolver)
at System.Data.Metadata.Edm.MetadataArtifactLoaderCompositeResource.CreateResourceLoader(String path, ExtensionCheck extensionCheck, String validExtension, ICollection`1 uriRegistry, MetadataArtifactAssemblyResolver resolver)
at System.Data.Metadata.Edm.MetadataArtifactLoader.Create(String path, ExtensionCheck extensionCheck, String validExtension, ICollection`1 uriRegistry, MetadataArtifactAssemblyResolver resolver)
at System.Data.Metadata.Edm.MetadataCache.SplitPaths(String paths)
at System.Data.Common.Utils.Memoizer`2.<>c__DisplayClass2.<Evaluate>b__0()
at System.Data.Common.Utils.Memoizer`2.Result.GetValue()
at System.Data.Common.Utils.Memoizer`2.Evaluate(TArg arg)
at System.Data.EntityClient.EntityConnection.GetMetadataWorkspace(Boolean initializeAllCollections)
at System.Data.Objects.ObjectContext.RetrieveMetadataWorkspaceFromConnection()
at System.Data.Objects.ObjectContext..ctor(EntityConnection connection, Boolean isConnectionConstructor)
at System.Data.Objects.ObjectContext..ctor(String connectionString, String defaultContainerName)
at Stoque.ECM.Modelo.Contexto..ctor() in D:\ECM 2.0\Stoque.ECM\Stoque.ECM.Modelo\Stoque.Modelo.Designer.cs:line 159
at Stoque.ECM.Servico.ServicoECM.ObterUsuarioPorLogin(String login) in D:\ECM 2.0\Stoque.ECM\Stoque.ECM.Servico\Classes\Usuarios.cs:line 331
I haven’t idea about the problem…
I’ll be glad about any help.
Thanks in advance
Looks like the culture of one of your assemblies is incorrect. For performance reasons by default Entity Framework filters out assemblies that most likely don’t have entities like assemblies that are part of .NET Framework or assemblies that are shipped by Microsoft. Entity Framework is using public key token to filter these assemblies out. To get the public key token AssemblyName object is created using assembly.FullName. If the assembly.FullName is not a valid assembly name you will see the above exception.