Queryable method call expected
От: senglory  
Дата: 11.03.10 23:44
Оценка: 80 (1)
Public Class GroupCalendarDBManager
    Inherits DbManager

    Public Sub New()

    End Sub

    Public Sub New(ByVal dataProvider As BLToolkit.Data.DataProvider.DataProviderBase, ByVal connectionString As String)
        MyBase.New(dataProvider, connectionString)
    End Sub

    Public ReadOnly Property Appointments() As Table(Of GroupCalendarDataModel.Appointment)
        Get
            Return GetTable(Of GroupCalendarDataModel.Appointment)()
        End Get
    End Property

    Public ReadOnly Property GroupCalendars() As Table(Of GroupCalendarDataModel.GroupCalendar)
        Get
            Return GetTable(Of GroupCalendarDataModel.GroupCalendar)()
        End Get
    End Property

    Public ReadOnly Property Users() As Table(Of GroupCalendarDataModel.User)
        Get
            Return GetTable(Of GroupCalendarDataModel.User)()
        End Get
    End Property

    Public ReadOnly Property User_GroupCalendars() As Table(Of GroupCalendarDataModel.User_GroupCalendar)
        Get
            Return GetTable(Of GroupCalendarDataModel.User_GroupCalendar)()
        End Get
    End Property

............
    Public Function GetDefaultCalendarIDForUserByName(ByVal sUN As String) As Integer
        Dim cc = From gc In GroupCalendars.AsQueryable() _
                 From u In Users.AsQueryable() _
                 From ugc In User_GroupCalendars.AsQueryable() _
                 Where ugc.UserID = u.ObjectID AndAlso ugc.GroupCalendarID = gc.ObjectID AndAlso u.UserName.ToUpper = sUN.ToUpper AndAlso ugc.IsDefaultCalendar = True _
                 Select gc
        Dim cc2 = cc.Single()
        Return cc2.ObjectID
    End Function


На жирной строке получаю исключение:


03/11/2010 15:42 — System.ArgumentException: Queryable method call expected. Got 'Convert(Convert(value(BusinessLogic.GroupCalendarDBManager).Users).AsQueryable())'.
Parameter name: info
at BLToolkit.Data.Linq.ExpressionParser`1.ParseSequenceInternal(ParseInfo info)
at BLToolkit.Data.Linq.ExpressionParser`1.ParseSequence(ParseInfo info)
at BLToolkit.Data.Linq.ExpressionParser`1.ParseSelectMany(LambdaInfo collectionSelector, LambdaInfo resultSelector, QuerySource source)
at BLToolkit.Data.Linq.ExpressionParser`1.<>c__DisplayClass79.<ParseSequenceInternal>b__1e(LambdaInfo l1, LambdaInfo l2)
at BLToolkit.Data.Linq.ParseInfoExtension.IsQueryableMethod(ParseInfo`1 pi, String methodName, Int32 nparams1, Int32 nparams2, Action`1 seq, Action`2 parms)
at BLToolkit.Data.Linq.ExpressionParser`1.<>c__DisplayClass79.<ParseSequenceInternal>b__1c(ParseInfo`1 pi)
at BLToolkit.Data.Linq.ParseInfo`1.Match(Func`2[] matches)
at BLToolkit.Data.Linq.ExpressionParser`1.ParseSequenceInternal(ParseInfo info)
at BLToolkit.Data.Linq.ExpressionParser`1.ParseSequence(ParseInfo info)
at BLToolkit.Data.Linq.ExpressionParser`1.<>c__DisplayClass79.<ParseSequenceInternal>b__1d(ParseInfo seq)
at BLToolkit.Data.Linq.ParseInfoExtension.IsQueryableMethod(ParseInfo`1 pi, String methodName, Int32 nparams1, Int32 nparams2, Action`1 seq, Action`2 parms)
at BLToolkit.Data.Linq.ExpressionParser`1.<>c__DisplayClass79.<ParseSequenceInternal>b__1c(ParseInfo`1 pi)
at BLToolkit.Data.Linq.ParseInfo`1.Match(Func`2[] matches)
at BLToolkit.Data.Linq.ExpressionParser`1.ParseSequenceInternal(ParseInfo info)
at BLToolkit.Data.Linq.ExpressionParser`1.ParseSequence(ParseInfo info)
at BLToolkit.Data.Linq.ExpressionParser`1.<>c__DisplayClass79.<>c__DisplayClass7d.<ParseSequenceInternal>b__1b(ParseInfo seq, LambdaInfo l)
at BLToolkit.Data.Linq.ParseInfoExtension.<>c__DisplayClass5.<IsQueryableMethod>b__2(LambdaInfo p)
at BLToolkit.Data.Linq.ParseInfo.<>c__DisplayClass1b.<CheckIfLambda>b__18(ParseInfo body)
at BLToolkit.Data.Linq.ParseInfo.IsLambda[T](Func`2[] parameters, Func`2 body, Func`2 func)
at BLToolkit.Data.Linq.ParseInfo.CheckIfLambda(Int32 nparms, Func`2 lambda)
at BLToolkit.Data.Linq.ParseInfoExtension.<>c__DisplayClass5.<IsQueryableMethod>b__1(ParseInfo l)
at BLToolkit.Data.Linq.ParseInfoExtension.IsMethod(ParseInfo`1 pi, Type declaringType, String methodName, Func`2[] args, Func`2 func)
at BLToolkit.Data.Linq.ParseInfoExtension.IsQueryableMethod(ParseInfo`1 pi, Func`3 lambda)
at BLToolkit.Data.Linq.ExpressionParser`1.<>c__DisplayClass79.<ParseSequenceInternal>b__1a(ParseInfo`1 pi)
at BLToolkit.Data.Linq.ParseInfo`1.Match(Func`2[] matches)
at BLToolkit.Data.Linq.ExpressionParser`1.ParseSequenceInternal(ParseInfo info)
at BLToolkit.Data.Linq.ExpressionParser`1.ParseSequence(ParseInfo info)
at BLToolkit.Data.Linq.ExpressionParser`1.<>c__DisplayClass79.<>c__DisplayClass7d.<ParseSequenceInternal>b__1b(ParseInfo seq, LambdaInfo l)
at BLToolkit.Data.Linq.ParseInfoExtension.<>c__DisplayClass5.<IsQueryableMethod>b__2(LambdaInfo p)
at BLToolkit.Data.Linq.ParseInfo.<>c__DisplayClass1b.<CheckIfLambda>b__18(ParseInfo body)
at BLToolkit.Data.Linq.ParseInfo.IsLambda[T](Func`2[] parameters, Func`2 body, Func`2 func)
at BLToolkit.Data.Linq.ParseInfo.CheckIfLambda(Int32 nparms, Func`2 lambda)
at BLToolkit.Data.Linq.ParseInfoExtension.<>c__DisplayClass5.<IsQueryableMethod>b__1(ParseInfo l)
at BLToolkit.Data.Linq.ParseInfoExtension.IsMethod(ParseInfo`1 pi, Type declaringType, String methodName, Func`2[] args, Func`2 func)
at BLToolkit.Data.Linq.ParseInfoExtension.IsQueryableMethod(ParseInfo`1 pi, Func`3 lambda)
at BLToolkit.Data.Linq.ExpressionParser`1.<>c__DisplayClass79.<ParseSequenceInternal>b__1a(ParseInfo`1 pi)
at BLToolkit.Data.Linq.ParseInfo`1.Match(Func`2[] matches)
at BLToolkit.Data.Linq.ExpressionParser`1.ParseSequenceInternal(ParseInfo info)
at BLToolkit.Data.Linq.ExpressionParser`1.ParseSequence(ParseInfo info)
at BLToolkit.Data.Linq.ExpressionParser`1.<>c__DisplayClass79.<>c__DisplayClass7b.<ParseSequenceInternal>b__19(ParseInfo seq)
at BLToolkit.Data.Linq.ParseInfoExtension.IsMethod(ParseInfo`1 pi, Type declaringType, String methodName, Func`2[] args, Func`2 func)
at BLToolkit.Data.Linq.ParseInfoExtension.IsQueryableMethod(ParseInfo`1 pi, Func`2 func)
at BLToolkit.Data.Linq.ExpressionParser`1.<>c__DisplayClass79.<ParseSequenceInternal>b__18(ParseInfo`1 pi)
at BLToolkit.Data.Linq.ParseInfo`1.Match(Func`2[] matches)
at BLToolkit.Data.Linq.ExpressionParser`1.ParseSequenceInternal(ParseInfo info)
at BLToolkit.Data.Linq.ExpressionParser`1.ParseSequence(ParseInfo info)
at BLToolkit.Data.Linq.ExpressionParser`1.<Parse>b__c(ParseInfo`1 pi)
at BLToolkit.Data.Linq.ParseInfo`1.Match(Func`2[] matches)
at BLToolkit.Data.Linq.ExpressionParser`1.Parse(DataProviderBase dataProvider, MappingSchema mappingSchema, Expression expression, ParameterExpression[] parameters)
at BLToolkit.Data.Linq.ExpressionInfo`1.GetExpressionInfo(DataProviderBase dataProvider, MappingSchema mappingSchema, Expression expr)
at BLToolkit.Data.Linq.Table`1.GetExpressionInfo(Expression expression, Boolean cache)
at BLToolkit.Data.Linq.Table`1.System.Linq.IQueryProvider.Execute[TResult](Expression expression)
at System.Linq.Queryable.Single[TSource](IQueryable`1 source)
at BusinessLogic.GroupCalendarDBManager.GetDefaultCalendarIDForUserByName(String sUN) in C:\PRJ\OpusFlow\BusinessLogic\GroupCalendarBL\GroupCalendarDBManager.vb:line 49
at BusinessLogic.Common.GetGroupCalendarIdForOutlookFolder(MAPIFolder mpf) in C:\PRJ\OpusFlow\BusinessLogic\Common.vb:line 601
at VstoVB1.ThisAddIn.colCalendarItems_ItemAdd(Object Item) in C:\PRJ\OpusFlow\VstoVB1\ThisAddIn.vb:line 39



Что ей не нравится? Подскажите, плиз.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.