Skip to content

C# 8/11 Static interface members support #3295

Closed
@NikitaEgorov

Description

@NikitaEgorov

When I tried to use C# 11 general math I got an exception 😢

NHibernate.HibernateException: Creating a proxy instance failed
 ---> System.TypeLoadException: Signature of the body and declaration in a method implementation do not match.  Type: 'ChatProxy'.  Assembly: 'ChatProxyAssembly,
 Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'.
   at System.Reflection.Emit.TypeBuilder.CreateTypeNoLock()
   at System.Reflection.Emit.TypeBuilder.CreateTypeInfoImpl()
   at System.Reflection.Emit.TypeBuilder.CreateTypeInfo()
   at NHibernate.Proxy.NHibernateProxyBuilder.CreateProxyType(Type baseType, IReadOnlyCollection`1 baseInterfaces)
   at NHibernate.Proxy.StaticProxyFactory.CreateProxyActivator(ProxyCacheEntry pke)
   at NHibernate.Proxy.StaticProxyFactory.<GetProxy>b__5_0(ProxyCacheEntry pke)
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at NHibernate.Proxy.StaticProxyFactory.GetProxy(Object id, ISessionImplementor session)
   --- End of inner exception stack trace ---
   at NHibernate.Proxy.StaticProxyFactory.GetProxy(Object id, ISessionImplementor session)
   at NHibernate.Tuple.Entity.AbstractEntityTuplizer.CreateProxy(Object id, ISessionImplementor session)
   at NHibernate.Persister.Entity.AbstractEntityPersister.CreateProxy(Object id, ISessionImplementor session)
   at NHibernate.Event.Default.DefaultLoadEventListener.CreateProxyIfNecessary(LoadEvent event, IEntityPersister persister, EntityKey keyToLoad, LoadType options, IPersistenceContext persistenceContext)
   at NHibernate.Event.Default.DefaultLoadEventListener.ProxyOrLoadAsync(LoadEvent event, IEntityPersister persister, EntityKey keyToLoad, LoadType options, CancellationToken cancellationToken)
--- End of stack trace from previous location ---
   at NHibernate.Event.Default.DefaultLoadEventListener.OnLoadAsync(LoadEvent event, LoadType loadType, CancellationToken cancellationToken)
   at NHibernate.Impl.SessionImpl.FireLoadAsync(LoadEvent event, LoadType loadType, CancellationToken cancellationToken)
   at NHibernate.Impl.SessionImpl.InternalLoadAsync(String entityName, Object id, Boolean eager, Boolean isNullable, CancellationToken cancellationToken)
   at NHibernate.Type.EntityType.ResolveIdentifierAsync(Object id, ISessionImplementor session, CancellationToken cancellationToken)
   at NHibernate.Engine.TwoPhaseLoad.InitializeEntityAsync(Object entity, Boolean readOnly, ISessionImplementor session, PreLoadEvent preLoadEvent, PostLoadEvent postLoadEvent, Action`2 cacheBatchingHandler, CancellationTok
en cancellationToken)
   at NHibernate.Loader.Loader.InitializeEntitiesAndCollectionsAsync(IList hydratedObjects, DbDataReader reader, ISessionImplementor session, Boolean readOnly, CacheBatcher cacheBatcher, CancellationToken cancellationToken)
   at NHibernate.Loader.Loader.DoQueryAsync(ISessionImplementor session, QueryParameters queryParameters, Boolean returnProxies, IResultTransformer forcedResultTransformer, QueryCacheResultBuilder queryCacheResultBuilder, C
ancellationToken cancellationToken)
   at NHibernate.Loader.Loader.DoQueryAndInitializeNonLazyCollectionsAsync(ISessionImplementor session, QueryParameters queryParameters, Boolean returnProxies, IResultTransformer forcedResultTransformer, QueryCacheResultBui
lder queryCacheResultBuilder, CancellationToken cancellationToken)
   at NHibernate.Loader.Loader.DoListAsync(ISessionImplementor session, QueryParameters queryParameters, IResultTransformer forcedResultTransformer, QueryCacheResultBuilder queryCacheResultBuilder, CancellationToken cancell
ationToken)
   at NHibernate.Loader.Loader.ListIgnoreQueryCacheAsync(ISessionImplementor session, QueryParameters queryParameters, CancellationToken cancellationToken)
   at NHibernate.Hql.Ast.ANTLR.QueryTranslatorImpl.ListAsync(ISessionImplementor session, QueryParameters queryParameters, CancellationToken cancellationToken)
   at NHibernate.Engine.Query.HQLQueryPlan.PerformListAsync(QueryParameters queryParameters, ISessionImplementor session, IList results, CancellationToken cancellationToken)
   at NHibernate.Impl.SessionImpl.ListAsync(IQueryExpression queryExpression, QueryParameters queryParameters, IList results, Object filterConnection, CancellationToken cancellationToken)
   at NHibernate.Impl.SessionImpl.ListAsync(IQueryExpression queryExpression, QueryParameters queryParameters, IList results, Object filterConnection, CancellationToken cancellationToken)
   at NHibernate.Impl.AbstractSessionImpl.ListAsync[T](IQueryExpression query, QueryParameters parameters, CancellationToken cancellationToken)
   at NHibernate.Impl.AbstractQueryImpl2.ListAsync[T](CancellationToken cancellationToken)
   at NHibernate.Linq.DefaultQueryProvider.ExecuteListAsync[TResult](Expression expression, CancellationToken cancellationToken)
   at NHibernate.Linq.LinqExtensionMethods.<>c__DisplayClass59_0`1.<<ToListAsync>g__InternalToListAsync|0>d.MoveNext()
--- End of stack trace from previous location ---

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions