Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Map / ViewGeneration / CqlGeneration / BooleanProjectedSlot.cs / 1305376 / BooleanProjectedSlot.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System.Data.Mapping.ViewGeneration.Structures; using System.Text; using System.Diagnostics; using System.Data.Common.Utils; namespace System.Data.Mapping.ViewGeneration.CqlGeneration { // This class represents slots for the boolean variables, e.g., _from0, // _from1, etc internal class BooleanProjectedSlot : ProjectedSlot { #region Constructor // effects: Creates a boolean slot for expression that comes from // originalCellNum, i.e., the value of the slot is "expr" and the // name is "_from", e.g., _from2 internal BooleanProjectedSlot(BoolExpression expr, CqlIdentifiers identifiers, int originalCellNum) { m_expr = expr; m_originalCell = new CellIdBoolean(identifiers, originalCellNum); CellIdBoolean boolExpr = expr.AsLiteral as CellIdBoolean; Debug.Assert(boolExpr == null || BoolLiteral.EqualityComparer.Equals(boolExpr, m_originalCell), "Cellid boolean for the slot and cell number disagree"); } #endregion #region Fields private BoolExpression m_expr; // The actual value of the slot - // could be CellIdBoolean! // A boolean corresponding to the original cell number (from0) private CellIdBoolean m_originalCell; #endregion #region Methods internal override StringBuilder AsCql(StringBuilder builder, MemberPath outputMember, string blockAlias, int indentLevel) { if (m_expr.IsTrue || m_expr.IsFalse) { // No Case statement for TRUE and FALSE m_expr.AsCql(builder, blockAlias); } else { builder.Append("CASE WHEN "); m_expr.AsCql(builder, blockAlias); builder.Append(" THEN True ELSE False END"); } return builder; } internal override string CqlFieldAlias(MemberPath outputMember) { // Return _from0, _from1 etc return m_originalCell.SlotName; } internal override void ToCompactString(StringBuilder builder) { StringUtil.FormatStringBuilder(builder, "<{0}, ", m_originalCell.SlotName); m_expr.ToCompactString(builder); builder.Append('>'); } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TransformerConfigurationWizardBase.cs
- RootBrowserWindow.cs
- DesignerCategoryAttribute.cs
- JournalNavigationScope.cs
- TransformGroup.cs
- RuleInfoComparer.cs
- DataKey.cs
- BitmapMetadataEnumerator.cs
- PropertyValueChangedEvent.cs
- TdsEnums.cs
- GridViewColumn.cs
- QueryOutputWriter.cs
- ExtensionQuery.cs
- WebPartZoneBaseDesigner.cs
- CreateUserErrorEventArgs.cs
- GreenMethods.cs
- DataSourceView.cs
- TextLine.cs
- BitmapEffectrendercontext.cs
- ExitEventArgs.cs
- MemberJoinTreeNode.cs
- XhtmlBasicCalendarAdapter.cs
- TableItemPatternIdentifiers.cs
- InputScopeNameConverter.cs
- WebPartEventArgs.cs
- LocalizationComments.cs
- MSAANativeProvider.cs
- XmlnsCache.cs
- ListSourceHelper.cs
- ProbeDuplexAsyncResult.cs
- PageFunction.cs
- ErrorStyle.cs
- ClientSettings.cs
- StateItem.cs
- QuestionEventArgs.cs
- XsltFunctions.cs
- Form.cs
- safex509handles.cs
- X509Extension.cs
- CaretElement.cs
- ListView.cs
- RowUpdatingEventArgs.cs
- SiteMembershipCondition.cs
- RoutedEventHandlerInfo.cs
- SmiMetaDataProperty.cs
- SoapIgnoreAttribute.cs
- StringUtil.cs
- ContractMapping.cs
- Site.cs
- CodeCatchClause.cs
- ListView.cs
- FormsAuthenticationTicket.cs
- DataObjectPastingEventArgs.cs
- ProjectionPlan.cs
- ExtentJoinTreeNode.cs
- AssemblyCache.cs
- TextContainer.cs
- LayoutManager.cs
- EndpointAddressMessageFilter.cs
- HitTestParameters3D.cs
- WebPartZoneAutoFormat.cs
- GuidelineSet.cs
- linebase.cs
- SuppressIldasmAttribute.cs
- DiscoveryCallbackBehavior.cs
- StorageEntityTypeMapping.cs
- Int32KeyFrameCollection.cs
- ProfilePropertyNameValidator.cs
- RemotingConfiguration.cs
- XmlSchemaType.cs
- SystemInformation.cs
- ICollection.cs
- SelectionPattern.cs
- StateMachine.cs
- UserPersonalizationStateInfo.cs
- InheritanceRules.cs
- Size3DValueSerializer.cs
- Part.cs
- WebServiceTypeData.cs
- XPathCompileException.cs
- TimelineGroup.cs
- AssociationSetEnd.cs
- EntityCodeGenerator.cs
- ServiceHostFactory.cs
- BrowserDefinitionCollection.cs
- FilteredAttributeCollection.cs
- BufferAllocator.cs
- AtomContentProperty.cs
- ObjectStateFormatter.cs
- SequenceQuery.cs
- Rectangle.cs
- AssociatedControlConverter.cs
- VisualStates.cs
- HttpException.cs
- SHA1.cs
- AsyncPostBackErrorEventArgs.cs
- OLEDB_Enum.cs
- XmlReflectionMember.cs
- RadioButtonBaseAdapter.cs
- MembershipSection.cs