NHibernate中外联接的一个错误..明白的指点一下!!!
代码:
Dim strHql As String = "select a.LANGUAGE_ID,a.LANGUAGE_NAME,b.LANGUAGE_LEVEL,a.TYPE_FLG from LANGUAGE a left outer join USER_LANGUAGE b on b.USER_ID = '" & _strUserId & "' and a.LANGUAGE_ID = b.LANGUAGE_ID "
' 员工基本信息的取得
lstUserLan = dbSession.CreateQuery(strHql).List
异常:
ex {"outer or full join must be followed by path expression [from Dmax.Core.LANGUAGE a left outer join USER_LANGUAGE b on b.USER_ID = '000003' and a.LANGUAGE_ID = b.LANGUAGE_ID ]"}
System.Exception- NHibernate.QueryException {"outer or full join must be followed by path expression [from Dmax.Core.LANGUAGE a left outer join USER_LANGUAGE b on b.USER_ID = '000003' and a.LANGUAGE_ID = b.LANGUAGE_ID ]"} NHibernate.QueryException
- Data {System.Collections.ListDictionaryInternal} System.Collections.IDictionary
- System.Collections.ListDictionaryInternal {System.Collections.ListDictionaryInternal} System.Collections.ListDictionaryInternal
Count 0 Integer
IsFixedSize False Boolean
IsReadOnly False Boolean
IsSynchronized False Boolean
Item インデックス付きのプロパティを評価するためには、プロパティが限定されていて、ユーザーにより引数が明示的に指定されていなければなりません。 Object
+ Keys {System.Collections.ListDictionaryInternal.NodeKeyValueCollection} System.Collections.ICollection
SyncRoot {Object} Object
+ Values {System.Collections.ListDictionaryInternal.NodeKeyValueCollection} System.Collections.ICollection
IsFixedSize False Boolean
IsReadOnly False Boolean
Item インデックス付きのプロパティを評価するためには、プロパティが限定されていて、ユーザーにより引数が明示的に指定されていなければなりません。 Object
+ Keys {System.Collections.ListDictionaryInternal.NodeKeyValueCollection} System.Collections.ICollection
+ Values {System.Collections.ListDictionaryInternal.NodeKeyValueCollection} System.Collections.ICollection
HelpLink Nothing String
InnerException Nothing System.Exception
Message "outer or full join must be followed by path expression [from Dmax.Core.LANGUAGE a left outer join USER_LANGUAGE b on b.USER_ID = '000003' and a.LANGUAGE_ID = b.LANGUAGE_ID ]" String
QueryString "from Dmax.Core.LANGUAGE a left outer join USER_LANGUAGE b on b.USER_ID = '000003' and a.LANGUAGE_ID = b.LANGUAGE_ID " String
Source "NHibernate" String
StackTrace " 場所 NHibernate.Hql.Classic.FromParser.Token(String token, QueryTranslator q)
場所 NHibernate.Hql.Classic.ClauseParser.Token(String token, QueryTranslator q)
場所 NHibernate.Hql.Classic.PreprocessingParser.Token(String token, QueryTranslator q)
場所 NHibernate.Hql.Classic.ParserHelper.Parse(IParser p, String text, String seperators, QueryTranslator q)
場所 NHibernate.Hql.Classic.QueryTranslator.Compile()
場所 NHibernate.Hql.Classic.QueryTranslator.Compile(IDictionary replacements, Boolean scalar)
場所 NHibernate.Impl.SessionFactoryImpl.GetQuery(String queryString, Boolean shallow, IDictionary enabledFilters)
場所 NHibernate.Impl.SessionImpl.GetQueries(String query, Boolean scalar)
場所 NHibernate.Impl.SessionImpl.Find(String query, QueryParameters parameters, IList results)
場所 NHibernate.Impl.SessionImpl.Find(String query, QueryParameters parameters)
場所 NHibernate.Impl.QueryImpl.List()
場所 Dmax.Util.OutputSkillHisExcFile.SetLangItemStatus(String strUserId, Worksheet& objWorkSheet) 場所 D:Dmax\Dmax.Util\OutputSkillHisExcFile.vb:行 178" String
+ TargetSite {System.Reflection.RuntimeMethodInfo} System.Reflection.MethodBase
+ Data {System.Collections.ListDictionaryInternal} System.Collections.IDictionary