/// <summary> /// 解释 FROM 子句。 /// </summary> /// <param name="DbParameters">用于缓存在解释过程中可能会产生的参数。</param> /// <returns></returns> public override string Parsing(ref List <IDbDataParameter> DbParameters) { FromBlock fb = (FromBlock)this.Description; StringBuilder cBuffer = new StringBuilder(" FROM"); foreach (object item in fb.Content) { if (item is IDescription) { IDescription D = (IDescription)item; D.DescriptionParserAdapter = fb.DescriptionParserAdapter; cBuffer.Append(D.GetParser().Parsing(ref DbParameters)); } else { if (cBuffer[cBuffer.Length - 1] == (char)0x20) { cBuffer.Append(item); } else { cBuffer.AppendFormat(" {0}", item); } } } return(cBuffer.ToString()); }
/// <summary> /// 创建一个 <see cref="MultiQuerySelector"/> 的对象实例. /// </summary> /// <param name="engine">用于执行查询的数据引擎.</param> internal MultiQuerySelector(DataEngine engine) { ReadEngine = engine; Command = new DbCommandBuilder(); fBlock = new FromBlock(); AgentsIndexes = new Dictionary <Type, AgentBufferItem>(); Agents = new List <AgentBufferItem>(); }