public static IQueryable DeserializeQuery(this DataContext dc, XElement rootXml)
        {
			var resolver = new TypeResolver(assemblies: null, knownTypes: GetKnownTypesFromTables(dc) );
            DLinqCustomExpressionXmlConverter customConverter = new DLinqCustomExpressionXmlConverter(dc, resolver);
			ExpressionSerializer serializer = new ExpressionSerializer(resolver, new List<CustomExpressionXmlConverter> { customConverter });
            Expression queryExpr = serializer.Deserialize(rootXml);
            // Query kind is populated by the ResolveXmlFromExpression method
            if (customConverter.QueryKind == null)
                throw new Exception(string.Format("CAnnot deserialize into DLinq query for datacontext {0} - no Table found", dc));
            return customConverter.QueryKind.Provider.CreateQuery(queryExpr);
        }
        //public static IQueryable DeserializeQuery(this DataContext dc, XElement rootXml)
		public static IQueryable DeserializeQuery(this ObjectContext dc, XElement rootXml)
        {
            DLinqSerializationTypeResolver resolver = new DLinqSerializationTypeResolver(dc);
            DLinqCustomExpressionXmlConverter customConverter = new DLinqCustomExpressionXmlConverter(dc, resolver);
            ExpressionSerializer serializer = new ExpressionSerializer(resolver) { Converters = { customConverter } };
            Expression queryExpr = serializer.Deserialize(rootXml);
            // Query kind is populated by the ResolveXmlFromExpression method
            if (customConverter.QueryKind == null)
                throw new Exception(string.Format("CAnnot deserialize into DLinq query for datacontext {0} - no Table found", dc));
            return customConverter.QueryKind.Provider.CreateQuery(queryExpr);
        }
Esempio n. 3
0
        public static IQueryable DeserializeQuery(this DataContext dc, XElement rootXml)
        {
            var resolver = new TypeResolver(assemblies: null, knownTypes: GetKnownTypesFromTables(dc));
            DLinqCustomExpressionXmlConverter customConverter = new DLinqCustomExpressionXmlConverter(dc, resolver);
            ExpressionSerializer serializer = new ExpressionSerializer(resolver, new List <CustomExpressionXmlConverter> {
                customConverter
            });
            Expression queryExpr = serializer.Deserialize(rootXml);

            // Query kind is populated by the ResolveXmlFromExpression method
            if (customConverter.QueryKind == null)
            {
                throw new Exception(string.Format("CAnnot deserialize into DLinq query for datacontext {0} - no Table found", dc));
            }
            return(customConverter.QueryKind.Provider.CreateQuery(queryExpr));
        }
Esempio n. 4
0
        //public static IQueryable DeserializeQuery(this DataContext dc, XElement rootXml)
        public static IQueryable DeserializeQuery(this ObjectContext dc, XElement rootXml)
        {
            DLinqSerializationTypeResolver    resolver        = new DLinqSerializationTypeResolver(dc);
            DLinqCustomExpressionXmlConverter customConverter = new DLinqCustomExpressionXmlConverter(dc, resolver);
            ExpressionSerializer serializer = new ExpressionSerializer(resolver)
            {
                Converters = { customConverter }
            };
            Expression queryExpr = serializer.Deserialize(rootXml);

            // Query kind is populated by the ResolveXmlFromExpression method
            if (customConverter.QueryKind == null)
            {
                throw new Exception(string.Format("CAnnot deserialize into DLinq query for datacontext {0} - no Table found", dc));
            }
            return(customConverter.QueryKind.Provider.CreateQuery(queryExpr));
        }