Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Mapping / StorageConditionPropertyMapping.cs / 1305376 / StorageConditionPropertyMapping.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Text; using System.Diagnostics; using System.Data.Metadata.Edm; namespace System.Data.Mapping { ////// Mapping metadata for Conditional property mapping on a type. /// Condition Property Mapping specifies a Condition either on the C side property or S side property. /// ////// For Example if conceptually you could represent the CS MSL file as following /// --Mapping /// --EntityContainerMapping ( CNorthwind-->SNorthwind ) /// --EntitySetMapping /// --EntityTypeMapping /// --TableMappingFragment /// --EntityKey /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ConditionProperyMap ( constant value-->SMemberMetadata ) /// --EntityTypeMapping /// --TableMappingFragment /// --EntityKey /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ComplexPropertyMap /// --ComplexTypeMap /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) /// --ConditionProperyMap ( constant value-->SMemberMetadata ) /// --AssociationSetMapping /// --AssociationTypeMapping /// --TableMappingFragment /// --EndPropertyMap /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) /// --EndPropertyMap /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --EntityContainerMapping ( CMyDatabase-->SMyDatabase ) /// --CompositionSetMapping /// --CompositionTypeMapping /// --TableMappingFragment /// --ParentEntityKey /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --EntityKey /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ConditionPropertyMap ( CMemberMetadata-->Constant value ) /// --ComplexPropertyMap /// --ComplexTypeMap /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ConditionProperyMap ( constant value-->SMemberMetadata ) /// --ScalarPropertyMap ( CMemberMetadata-->Constant value ) /// This class represents the metadata for all the condition property map elements in the /// above example. /// internal class StorageConditionPropertyMapping : StoragePropertyMapping { #region Constructors ////// Construct a new condition Property mapping object /// /// /// /// /// internal StorageConditionPropertyMapping(EdmProperty cdmMember, EdmProperty columnMember , object value, NullableisNull) : base(cdmMember) { Debug.Assert((cdmMember != null) || (columnMember != null), "Both CDM and Column Members can not be specified for Condition Mapping"); Debug.Assert((cdmMember == null) || (columnMember == null), "Either CDM or Column Members has to be specified for Condition Mapping"); Debug.Assert((isNull.HasValue) || (value != null), "Both Value and IsNull can not be specified on Condition Mapping"); Debug.Assert(!(isNull.HasValue) || (value == null), "Either Value or IsNull has to be specified on Condition Mapping"); this.m_columnMember = columnMember; this.m_value = value; this.m_isNull = isNull; } #endregion #region Fields EdmProperty m_columnMember; // Column EdmMember for which the condition is specified. object m_value; //value for the condition thats being mapped Nullable m_isNull; #endregion #region Properties /// /// Value for the condition /// internal object Value { get { return this.m_value; } } ////// Whether the property is being mapped to Null or NotNull /// internal NullableIsNull { get { return this.m_isNull; } } /// /// ColumnMember for which the Condition Map is being specified /// internal EdmProperty ColumnProperty { get { return this.m_columnMember; } } #endregion #region Methods ////// This method is primarily for debugging purposes. /// Will be removed shortly. /// /// internal override void Print(int index) { StorageEntityContainerMapping.GetPrettyPrintString(ref index); StringBuilder sb = new StringBuilder(); sb.Append("ConditionPropertyMapping"); sb.Append(" "); if (this.EdmProperty != null) { sb.Append("Name:"); sb.Append(this.EdmProperty.Name); sb.Append(" "); } if (this.ColumnProperty != null) { sb.Append("Column Name:"); sb.Append(this.ColumnProperty.Name); sb.Append(" "); } if (this.Value != null) { sb.Append("Value:"); sb.Append("'" + Value + "'"); sb.Append(" "); sb.Append("Value CLR Type:"); sb.Append("'" + Value.GetType() + "'"); sb.Append(" "); } sb.Append("Value TypeMetadata:"); EdmType memberType = (ColumnProperty != null) ? ColumnProperty.TypeUsage.EdmType : null; if (memberType != null) { sb.Append("'" + memberType.FullName + "'"); sb.Append(" "); } if (this.IsNull.HasValue) { sb.Append("IsNull:"); sb.Append(this.IsNull); sb.Append(" "); } Console.WriteLine(sb.ToString()); } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Text; using System.Diagnostics; using System.Data.Metadata.Edm; namespace System.Data.Mapping { ////// Mapping metadata for Conditional property mapping on a type. /// Condition Property Mapping specifies a Condition either on the C side property or S side property. /// ////// For Example if conceptually you could represent the CS MSL file as following /// --Mapping /// --EntityContainerMapping ( CNorthwind-->SNorthwind ) /// --EntitySetMapping /// --EntityTypeMapping /// --TableMappingFragment /// --EntityKey /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ConditionProperyMap ( constant value-->SMemberMetadata ) /// --EntityTypeMapping /// --TableMappingFragment /// --EntityKey /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ComplexPropertyMap /// --ComplexTypeMap /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) /// --ConditionProperyMap ( constant value-->SMemberMetadata ) /// --AssociationSetMapping /// --AssociationTypeMapping /// --TableMappingFragment /// --EndPropertyMap /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) /// --EndPropertyMap /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --EntityContainerMapping ( CMyDatabase-->SMyDatabase ) /// --CompositionSetMapping /// --CompositionTypeMapping /// --TableMappingFragment /// --ParentEntityKey /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --EntityKey /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ConditionPropertyMap ( CMemberMetadata-->Constant value ) /// --ComplexPropertyMap /// --ComplexTypeMap /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ConditionProperyMap ( constant value-->SMemberMetadata ) /// --ScalarPropertyMap ( CMemberMetadata-->Constant value ) /// This class represents the metadata for all the condition property map elements in the /// above example. /// internal class StorageConditionPropertyMapping : StoragePropertyMapping { #region Constructors ////// Construct a new condition Property mapping object /// /// /// /// /// internal StorageConditionPropertyMapping(EdmProperty cdmMember, EdmProperty columnMember , object value, NullableisNull) : base(cdmMember) { Debug.Assert((cdmMember != null) || (columnMember != null), "Both CDM and Column Members can not be specified for Condition Mapping"); Debug.Assert((cdmMember == null) || (columnMember == null), "Either CDM or Column Members has to be specified for Condition Mapping"); Debug.Assert((isNull.HasValue) || (value != null), "Both Value and IsNull can not be specified on Condition Mapping"); Debug.Assert(!(isNull.HasValue) || (value == null), "Either Value or IsNull has to be specified on Condition Mapping"); this.m_columnMember = columnMember; this.m_value = value; this.m_isNull = isNull; } #endregion #region Fields EdmProperty m_columnMember; // Column EdmMember for which the condition is specified. object m_value; //value for the condition thats being mapped Nullable m_isNull; #endregion #region Properties /// /// Value for the condition /// internal object Value { get { return this.m_value; } } ////// Whether the property is being mapped to Null or NotNull /// internal NullableIsNull { get { return this.m_isNull; } } /// /// ColumnMember for which the Condition Map is being specified /// internal EdmProperty ColumnProperty { get { return this.m_columnMember; } } #endregion #region Methods ////// This method is primarily for debugging purposes. /// Will be removed shortly. /// /// internal override void Print(int index) { StorageEntityContainerMapping.GetPrettyPrintString(ref index); StringBuilder sb = new StringBuilder(); sb.Append("ConditionPropertyMapping"); sb.Append(" "); if (this.EdmProperty != null) { sb.Append("Name:"); sb.Append(this.EdmProperty.Name); sb.Append(" "); } if (this.ColumnProperty != null) { sb.Append("Column Name:"); sb.Append(this.ColumnProperty.Name); sb.Append(" "); } if (this.Value != null) { sb.Append("Value:"); sb.Append("'" + Value + "'"); sb.Append(" "); sb.Append("Value CLR Type:"); sb.Append("'" + Value.GetType() + "'"); sb.Append(" "); } sb.Append("Value TypeMetadata:"); EdmType memberType = (ColumnProperty != null) ? ColumnProperty.TypeUsage.EdmType : null; if (memberType != null) { sb.Append("'" + memberType.FullName + "'"); sb.Append(" "); } if (this.IsNull.HasValue) { sb.Append("IsNull:"); sb.Append(this.IsNull); sb.Append(" "); } Console.WriteLine(sb.ToString()); } #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
- RectangleHotSpot.cs
- XamlPathDataSerializer.cs
- MissingMemberException.cs
- _NegotiateClient.cs
- ResourceProperty.cs
- CodeCatchClause.cs
- SplitterDesigner.cs
- FontStyles.cs
- WebPartPersonalization.cs
- RecognizerBase.cs
- StdValidatorsAndConverters.cs
- GeometryCombineModeValidation.cs
- HttpConfigurationSystem.cs
- XDeferredAxisSource.cs
- CacheAxisQuery.cs
- MessageSmuggler.cs
- SoapWriter.cs
- ReadOnlyCollectionBuilder.cs
- sqlmetadatafactory.cs
- WebUtil.cs
- Oid.cs
- ExceptionHandlers.cs
- Evaluator.cs
- FlowDocumentPaginator.cs
- MailDefinition.cs
- CapabilitiesUse.cs
- ComEventsHelper.cs
- _OverlappedAsyncResult.cs
- ParallelTimeline.cs
- ExtendedPropertiesHandler.cs
- VarInfo.cs
- __Error.cs
- Quaternion.cs
- BitmapEffectrendercontext.cs
- XmlIgnoreAttribute.cs
- LinearKeyFrames.cs
- HttpMethodConstraint.cs
- Lock.cs
- TimeSpanStorage.cs
- DeobfuscatingStream.cs
- DesignerAttribute.cs
- GeneralTransform2DTo3DTo2D.cs
- GridViewUpdatedEventArgs.cs
- TextBoxAutomationPeer.cs
- ScrollProperties.cs
- Activity.cs
- AndCondition.cs
- StateDesignerConnector.cs
- ApplyTemplatesAction.cs
- EditBehavior.cs
- TextTreeUndo.cs
- GenericXmlSecurityToken.cs
- ComplusEndpointConfigContainer.cs
- DbXmlEnabledProviderManifest.cs
- Regex.cs
- FormDesigner.cs
- MarkupExtensionParser.cs
- MediaContext.cs
- CompiledQuery.cs
- TabItemWrapperAutomationPeer.cs
- FactoryGenerator.cs
- MaskedTextBox.cs
- BuildManager.cs
- DesignSurfaceManager.cs
- MemberRelationshipService.cs
- BitmapCacheBrush.cs
- clipboard.cs
- EventLogHandle.cs
- Int64.cs
- BitVec.cs
- dataSvcMapFileLoader.cs
- FreezableDefaultValueFactory.cs
- TileBrush.cs
- SystemNetworkInterface.cs
- DrawingAttributesDefaultValueFactory.cs
- QueryableDataSource.cs
- StateElementCollection.cs
- storepermission.cs
- GlobalizationAssembly.cs
- WebPermission.cs
- PickBranchDesigner.xaml.cs
- TextRangeBase.cs
- XamlFigureLengthSerializer.cs
- MailAddressCollection.cs
- ActionFrame.cs
- MetadataItem_Static.cs
- JavaScriptString.cs
- WorkflowViewService.cs
- AdRotator.cs
- IUnknownConstantAttribute.cs
- ButtonBaseAutomationPeer.cs
- BaseParagraph.cs
- NameNode.cs
- SystemIPv4InterfaceProperties.cs
- OptionalRstParameters.cs
- MetadataWorkspace.cs
- WebPartTracker.cs
- WebException.cs
- SqlBooleanMismatchVisitor.cs
- BooleanStorage.cs