private Type ParseNormalTypeFromXmlCore(XElement xml) { if (!xml.HasElements) { return(resolver.GetType(xml.Attribute("Name").Value)); } var genericArgumentTypes = from genArgXml in xml.Elements() select ParseTypeFromXmlCore(genArgXml); return(resolver.GetType(xml.Attribute("Name").Value, genericArgumentTypes)); }
public override Expression Deserialize(XElement expressionXml) { if (expressionXml.Name.LocalName == "Table") { Type type = resolver.GetType(expressionXml.Attribute("Type").Value); ITable table = null; // dc.GetTable(type); // REturning a random IQueryable of the right kind so that we can re-create the IQueryable // instance at the end of this method... QueryKind = table; return(Expression.Constant(table)); } return(null); }