當前位置: 首頁>>代碼示例>>C#>>正文


C# SelectFragment.AddFormula方法代碼示例

本文整理匯總了C#中NHibernate.SqlCommand.SelectFragment.AddFormula方法的典型用法代碼示例。如果您正苦於以下問題:C# SelectFragment.AddFormula方法的具體用法?C# SelectFragment.AddFormula怎麽用?C# SelectFragment.AddFormula使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在NHibernate.SqlCommand.SelectFragment的用法示例。


在下文中一共展示了SelectFragment.AddFormula方法的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的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: CreateSelect

		protected SelectFragment CreateSelect(int[] subclassColumnNumbers, int[] subclassFormulaNumbers)
		{
			SelectFragment selectFragment = new SelectFragment(Factory.Dialect);

			int[] columnTableNumbers = SubclassColumnTableNumberClosure;
			string[] columnAliases = SubclassColumnAliasClosure;
			string[] columns = SubclassColumnClosure;
			for (int i = 0; i < subclassColumnNumbers.Length; i++)
			{
				if (subclassColumnSelectableClosure[i])
				{
					int columnNumber = subclassColumnNumbers[i];
					string subalias = GenerateTableAlias(RootAlias, columnTableNumbers[columnNumber]);
					selectFragment.AddColumn(subalias, columns[columnNumber], columnAliases[columnNumber]);
				}
			}

			int[] formulaTableNumbers = SubclassFormulaTableNumberClosure;
			String[] formulaTemplates = SubclassFormulaTemplateClosure;
			String[] formulaAliases = SubclassFormulaAliasClosure;
			for (int i = 0; i < subclassFormulaNumbers.Length; i++)
			{
				int formulaNumber = subclassFormulaNumbers[i];
				String subalias = GenerateTableAlias(RootAlias, formulaTableNumbers[formulaNumber]);
				selectFragment.AddFormula(subalias, formulaTemplates[formulaNumber], formulaAliases[formulaNumber]);
			}

			return selectFragment;
		}
開發者ID:rbirkby,項目名稱:nhibernate-core,代碼行數:29,代碼來源:AbstractEntityPersister.cs

示例3: AddDiscriminatorToSelect

		protected override void AddDiscriminatorToSelect(SelectFragment select, string name, string suffix)
		{
			if (IsDiscriminatorFormula)
				select.AddFormula(name, DiscriminatorFormulaTemplate, DiscriminatorAlias);
			else
				select.AddColumn(name, DiscriminatorColumnName, DiscriminatorAlias);
		}
開發者ID:juanplopes,項目名稱:nhibernate,代碼行數:7,代碼來源:SingleTableEntityPersister.cs

示例4: AppendIndexColumns

		protected virtual void AppendIndexColumns(SelectFragment frag, string alias)
		{
			if (hasIndex)
			{
				for (int i = 0; i < indexColumnIsSettable.Length; i++)
				{
					if (indexColumnIsSettable[i])
					{
						frag.AddColumn(alias, indexColumnNames[i], indexColumnAliases[i]);
					}
					else
					{
						frag.AddFormula(alias, indexFormulaTemplates[i], indexColumnAliases[i]);
					}
				}
			}
		}
開發者ID:khaliyo,項目名稱:Spring.net-NHibernate.net-Asp.net-MVC-DWZ-,代碼行數:17,代碼來源:AbstractCollectionPersister.cs

示例5: AppendElementColumns

		protected virtual void AppendElementColumns(SelectFragment frag, string elemAlias)
		{
			for (int i = 0; i < elementColumnIsSettable.Length; i++)
			{
				if (elementColumnIsSettable[i])
				{
					frag.AddColumn(elemAlias, elementColumnNames[i], elementColumnAliases[i]);
				}
				else
				{
					frag.AddFormula(elemAlias, elementFormulaTemplates[i], elementColumnAliases[i]);
				}
			}
		}
開發者ID:khaliyo,項目名稱:Spring.net-NHibernate.net-Asp.net-MVC-DWZ-,代碼行數:14,代碼來源:AbstractCollectionPersister.cs

示例6: 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

示例7: 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.AddFormula方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。