当前位置: 首页>>代码示例>>C#>>正文


C# SelectFragment.ToSqlStringFragment方法代码示例

本文整理汇总了C#中NHibernate.SqlCommand.SelectFragment.ToSqlStringFragment方法的典型用法代码示例。如果您正苦于以下问题:C# SelectFragment.ToSqlStringFragment方法的具体用法?C# SelectFragment.ToSqlStringFragment怎么用?C# SelectFragment.ToSqlStringFragment使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在NHibernate.SqlCommand.SelectFragment的用法示例。


在下文中一共展示了SelectFragment.ToSqlStringFragment方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: PropertySelectFragment

		public string PropertySelectFragment(string name, string suffix, bool allProperties)
		{
			SelectFragment select = new SelectFragment(Factory.Dialect)
				.SetSuffix(suffix)
				.SetUsedAliases(IdentifierAliases);

			int[] columnTableNumbers = SubclassColumnTableNumberClosure;
			string[] columnAliases = SubclassColumnAliasClosure;
			string[] columns = SubclassColumnClosure;

			for (int i = 0; i < columns.Length; i++)
			{
				bool selectable = (allProperties || !subclassColumnLazyClosure[i]) &&
					!IsSubclassTableSequentialSelect(columnTableNumbers[i]) &&
					subclassColumnSelectableClosure[i];
				if (selectable)
				{
					string subalias = GenerateTableAlias(name, columnTableNumbers[i]);
					select.AddColumn(subalias, columns[i], columnAliases[i]);
				}
			}

			int[] formulaTableNumbers = SubclassFormulaTableNumberClosure;
			string[] formulaTemplates = SubclassFormulaTemplateClosure;
			string[] formulaAliases = SubclassFormulaAliasClosure;
			for (int i = 0; i < formulaTemplates.Length; i++)
			{
				bool selectable = (allProperties || !subclassFormulaLazyClosure[i]) &&
					!IsSubclassTableSequentialSelect(formulaTableNumbers[i]);
				if (selectable)
				{
					string subalias = GenerateTableAlias(name, formulaTableNumbers[i]);
					select.AddFormula(subalias, formulaTemplates[i], formulaAliases[i]);
				}
			}

			if (entityMetamodel.HasSubclasses)
				AddDiscriminatorToSelect(select, name, suffix);

			if (HasRowId)
				select.AddColumn(name, rowIdName, Loadable.RowIdAlias);

			return select.ToSqlStringFragment();
		}
开发者ID:rbirkby,项目名称:nhibernate-core,代码行数:44,代码来源:AbstractEntityPersister.cs

示例2: PropertySelectFragment

		public override SqlString PropertySelectFragment( string alias, string suffix )
		{
			SelectFragment frag = new SelectFragment( factory.Dialect )
				.SetSuffix( suffix )
				.SetUsedAliases( IdentifierAliases );

			for( int i = 0; i < subclassColumnClosure.Length; i++ )
			{
				string subalias = Alias( alias, subclassColumnTableNumberClosure[ i ] );
				frag.AddColumn( subalias, subclassColumnClosure[ i ], subclassColumnClosureAliases[ i ]	);
			}

			for( int i = 0; i < subclassFormulaTemplateClosure.Length; i++ )
			{
				string subalias = Alias( alias, subclassFormulaTableNumberClosure[ i ] );
				frag.AddFormula( subalias, subclassFormulaTemplateClosure[ i ], subclassFormulaAliasClosure[ i ]	);
			}

			if( HasSubclasses )
			{
				SqlStringBuilder builder = new SqlStringBuilder( 3 );

				builder.Add( StringHelper.CommaSpace );
				builder.Add(
					DiscriminatorFragment( alias )
						.SetReturnColumnName( DiscriminatorAlias, suffix )
						.ToSqlStringFragment()
					);

				builder.Add( frag.ToSqlStringFragment() );

				return builder.ToSqlString();
			}
			else
			{
				return frag.ToSqlStringFragment();
			}
		}
开发者ID:rcarrillopadron,项目名称:nhibernate-1.0.2.0,代码行数:38,代码来源:NormalizedEntityPersister.cs

示例3: ConcretePropertySelectFragment

		private SqlString ConcretePropertySelectFragment( string alias, bool[] includeProperty )
		{
			int propertyCount = propertyColumnNames.Length;
			SelectFragment frag = new SelectFragment( Dialect );

			for( int i = 0; i < propertyCount; i++ )
			{
				if( includeProperty[ i ] )
				{
					frag.AddColumns(
						Alias( alias, propertyTables[ i ] ),
						propertyColumnNames[ i ],
						propertyColumnNameAliases[ i ] );
				}
			}

			return frag.ToSqlStringFragment( );
		}
开发者ID:rcarrillopadron,项目名称:nhibernate-1.0.2.0,代码行数:18,代码来源:NormalizedEntityPersister.cs

示例4: SelectFragment

		public SqlString SelectFragment( string alias )
		{
			SelectFragment frag = new SelectFragment( dialect )
				.SetSuffix( String.Empty ) //always ignore suffix for collection columns
				.AddColumns( alias, keyColumnNames, keyColumnAliases )
				.AddColumns( alias, elementColumnNames, elementColumnAliases );
			if( hasIndex )
			{
				frag.AddColumns( alias, indexColumnNames, indexColumnAliases );
			}
			if( hasIdentifier )
			{
				frag.AddColumn( alias, identifierColumnName, identifierColumnAlias );
			}
			return frag.ToSqlStringFragment( false );
		}
开发者ID:rcarrillopadron,项目名称:nhibernate-1.0.2.0,代码行数:16,代码来源:AbstractCollectionPersister.cs

示例5: ConcretePropertySelectFragment

		// TODO NH: should remove duplication between this and the other overload,
		// probably using H3 approach (adding indirection through IInclusionChecker interface).
		protected string ConcretePropertySelectFragment(string alias, ValueInclusion[] inclusions)
		{
			int propertyCount = entityMetamodel.PropertySpan;
			int[] propertyTableNumbers = PropertyTableNumbersInSelect;
			SelectFragment frag = new SelectFragment(Factory.Dialect);
			for (int i = 0; i < propertyCount; i++)
			{
				if (inclusions[i] != ValueInclusion.None)
				{
					//ie. updateable, not a formula
					frag.AddColumns(
						GenerateTableAlias(alias, propertyTableNumbers[i]),
						propertyColumnNames[i],
						propertyColumnAliases[i]
						);
					frag.AddFormulas(
						GenerateTableAlias(alias, propertyTableNumbers[i]),
						propertyColumnFormulaTemplates[i],
						propertyColumnAliases[i]
						);
				}
			}
			return frag.ToSqlStringFragment();
		}
开发者ID:Novthirteen,项目名称:sconit_timesseiko,代码行数:26,代码来源:AbstractEntityPersister.cs

示例6: PropertySelectFragment

		public string PropertySelectFragment(string name, string suffix)
		{
			SelectFragment select = new SelectFragment(Factory.Dialect)
				.SetSuffix(suffix)
				.SetUsedAliases(IdentifierAliases);

			int[] columnTableNumbers = SubclassColumnTableNumberClosure;
			string[] columnAliases = SubclassColumnAliasClosure;
			string[] columns = SubclassColumnClosure;

			for (int i = 0; i < columns.Length; i++)
			{
				string subalias = Alias(name, columnTableNumbers[i]);
				select.AddColumn(subalias, columns[i], columnAliases[i]);
			}

			int[] formulaTableNumbers = SubclassFormulaTableNumberClosure;
			string[] formulaTemplates = SubclassFormulaTemplateClosure;
			string[] formulaAliases = SubclassFormulaAliasClosure;

			for (int i = 0; i < formulaTemplates.Length; i++)
			{
				string subalias = Alias(name, formulaTableNumbers[i]);
				select.AddFormula(subalias, formulaTemplates[i], formulaAliases[i]);
			}

			if (HasSubclasses)
			{
				AddDiscriminatorToSelect(select, name, suffix);
			}

			return select.ToSqlStringFragment();
		}
开发者ID:Novthirteen,项目名称:sconit_timesseiko,代码行数:33,代码来源:AbstractEntityPersister.cs


注:本文中的NHibernate.SqlCommand.SelectFragment.ToSqlStringFragment方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。