I already tried that. I got an exception:
"Object reference not set to an instance of an object." at NHibernate.Criterion.SubqueryExpression..ctor(String op, String quantifier, DetachedCriteria dc) at NHibernate.Criterion.SimpleSubqueryExpression..ctor(Object value, String op, String quantifier, DetachedCriteria dc) at NHibernate.Criterion.Subqueries.Eq(Object value, DetachedCriteria dc) at NHibernate.Linq.Visitors.BinaryCriterionVisitor.GetBinaryCriteria(ICriteria rootCriteria, ISession session, BinaryExpression expr, ComparePropToValue comparePropToValue, ComparePropToProp comparePropToProp, CompareValueToCriteria compareValueToCriteria, ComparePropToCriteria comparePropToCriteria) at NHibernate.Linq.Visitors.WhereArgumentsVisitor.VisitBinaryCriterionExpression(BinaryExpression expr) at NHibernate.Linq.Visitors.WhereArgumentsVisitor.VisitBinary(BinaryExpression expr) at NHibernate.Linq.Visitors.ExpressionVisitor.Visit(Expression exp) at NHibernate.Linq.Visitors.NHibernateExpressionVisitor.Visit(Expression exp) at NHibernate.Linq.Visitors.ExpressionVisitor.VisitLambda(LambdaExpression lambda) at NHibernate.Linq.Visitors.ExpressionVisitor.Visit(Expression exp) at NHibernate.Linq.Visitors.NHibernateExpressionVisitor.Visit(Expression exp) at NHibernate.Linq.Visitors.WhereArgumentsVisitor.VisitUnary(UnaryExpression expr) at NHibernate.Linq.Visitors.ExpressionVisitor.Visit(Expression exp) at NHibernate.Linq.Visitors.NHibernateExpressionVisitor.Visit(Expression exp) at NHibernate.Linq.Visitors.WhereArgumentsVisitor.GetCriterion(ICriteria rootCriteria, ISession session, Expression expression) at NHibernate.Linq.Visitors.RootVisitor.HandleWhereCall(MethodCallExpression call) at NHibernate.Linq.Visitors.RootVisitor.VisitMethodCall(MethodCallExpression expr) at NHibernate.Linq.Visitors.ExpressionVisitor.Visit(Expression exp) at NHibernate.Linq.Visitors.NHibernateExpressionVisitor.Visit(Expression exp) at NHibernate.Linq.Visitors.NHibernateQueryTranslator.TranslateInternal(Expression expression) at NHibernate.Linq.Visitors.NHibernateQueryTranslator.Translate(Expression expression, QueryOptions queryOptions) at NHibernate.Linq.NHibernateQueryProvider.TranslateExpression(Expression expression) at NHibernate.Linq.NHibernateQueryProvider.Execute(Expression expression) at NHibernate.Linq.Query`1.GetEnumerator() at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection) at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source) at NHibernate.BusinessObjects.UnitTest.EnumTest.RunEnumTest() in D: \Projects\Private\NHibernate.BusinessObjects\trunk\Test\Source \NHibernate.BusinessObjects.UnitTest\EnumTest.cs: Would be nice to now if there is any other way. Olaf On 25 Mai, 22:30, cliff vaughn <[email protected]> wrote: > since you're doing bitwise comparison, the proper way to doing that is > (myObject.TestEnum1 & ETest.Test1) == ETest.Test1. I don't know if this > would be property translated or not though. > > > > > > On Tue, May 25, 2010 at 4:18 PM, olaf <[email protected]> wrote: > > Hi, > > > I've defined an enum like this: > > > namespace Test > > { > > [System.FlagsAttribute] > > public enum ETest > > { > > Test1 = 1, > > Test2 = 2, > > Test3 = 4 > > } > > > public class ETestStringType : NHibernate.Type.EnumStringType<ETest> > > { > > } > > } > > > In my hbm file file I use it in a property: > > > <property name="TestEnum1" > > type="Test.ETestStringType, Test" > > not-null="true" /> > > > I can set the property with myObject.TestEnum1 = ETest.Test1 | > > ETest.Test2. > > > I use LINQ to quere the data: > > > var result = from obj in session.Linq<MyType> where obj.TestEnum1 == > > ETest.Test1 select obj; > > > This returns all objects with TestEnum1 set to "ETest.Test1" but not > > objects with TestEnum1 set to e.g. "ETest.Test1 | ETest.Test3" > > > I need a way to get all objects set to ETest.Test1 combined with any > > other flag. > > > Any ideas? > > > Thanks > > Olaf > > > -- > > You received this message because you are subscribed to the Google Groups > > "nhusers" group. > > To post to this group, send email to [email protected]. > > To unsubscribe from this group, send email to > > [email protected]<nhusers%[email protected]> > > . > > For more options, visit this group at > >http://groups.google.com/group/nhusers?hl=en. > > -- > thanks > > cliff- Zitierten Text ausblenden - > > - Zitierten Text anzeigen - -- You received this message because you are subscribed to the Google Groups "nhusers" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/nhusers?hl=en.
