OK, cela va être un peu long, car c'est un gros système (que je ne prétends pas comprendre entièrement, pour le moment), et le problème pourrait ne pas être avec NHibernate lui-même, et j'ai même du mal à le reproduire, mais ...NHibernate.QueryException avec dynamic-component
J'ai une classe avec une section dynamique-composant> <, et quand j'exécute une requête (via mon ASP.NET MVC application), il échoue, mais seulement parfois. (Ouais, le pire!)
L'exception que je vois est:
NHibernate.QueryException: could not resolve property:
Attributes.MyAttributeName of: MyClassName
at NHibernate.Persister.Entity.AbstractPropertyMapping.GetColumns(String propertyName)
at NHibernate.Persister.Entity.AbstractPropertyMapping.ToColumns(String alias, String propertyName)
at NHibernate.Persister.Entity.BasicEntityPropertyMapping.ToColumns(String alias, String propertyName)
at NHibernate.Persister.Entity.AbstractEntityPersister.ToColumns(String alias, String propertyName)
at NHibernate.Loader.Criteria.CriteriaQueryTranslator.GetColumns(String propertyName, ICriteria subcriteria)
at NHibernate.Loader.Criteria.CriteriaQueryTranslator.GetColumnsUsingProjection(ICriteria subcriteria, String propertyName)
at NHibernate.Criterion.CriterionUtil.GetColumnNamesUsingPropertyName(ICriteriaQuery criteriaQuery, ICriteria criteria, String propertyName, Object value, ICriterion critertion)
at NHibernate.Criterion.CriterionUtil.GetColumnNamesForSimpleExpression(String propertyName, IProjection projection, ICriteriaQuery criteriaQuery, ICriteria criteria, IDictionary`2 enabledFilters, ICriterion criterion, Object value)
at NHibernate.Criterion.SimpleExpression.ToSqlString(ICriteria criteria, ICriteriaQuery criteriaQuery, IDictionary`2 enabledFilters)
at NHibernate.Loader.Criteria.CriteriaQueryTranslator.GetWhereCondition(IDictionary`2 enabledFilters)
at NHibernate.Loader.Criteria.CriteriaJoinWalker..ctor(IOuterJoinLoadable persister, CriteriaQueryTranslator translator, ISessionFactoryImplementor factory, CriteriaImpl criteria, String rootEntityName, IDictionary`2 enabledFilters)
at NHibernate.Loader.Criteria.CriteriaLoader..ctor(IOuterJoinLoadable persister, ISessionFactoryImplementor factory, CriteriaImpl rootCriteria, String rootEntityName, IDictionary`2 enabledFilters)
at NHibernate.Impl.SessionImpl.List(CriteriaImpl criteria, IList results)
at NHibernate.Impl.CriteriaImpl.List(IList results)
at NHibernate.Impl.CriteriaImpl.UniqueResult[T]()
...my code below here...
Quelqu'un peut-il expliquer exactement ce que cela signifie QueryException, à savoir si je peux avoir une idée de ce qu'est exactement qu'il pense ça va mal?
Merci!
Eh bien, il n'y a pas de "champ" - c'est dans la table de hachage à composante dynamique. Mais oui, on dirait qu'il perd la cartographie quelque part ... – Ken