Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntityDesign / Design / System / Data / EntityModel / Emitters / EntityTypeEmitter.cs / 1305376 / EntityTypeEmitter.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System; using System.Collections.Generic; using System.CodeDom; using System.Data; using Som=System.Data.EntityModel.SchemaObjectModel; using System.Data.Metadata.Edm; namespace System.Data.EntityModel.Emitters { ////// Summary description for ItemTypeEmitter. /// internal sealed class EntityTypeEmitter : StructuredTypeEmitter { #region Public Methods ////// /// /// /// public EntityTypeEmitter(ClientApiGenerator generator, EntityType entity) : base(generator, entity) { } #endregion #region Protected Methods ////// /// /// protected override void EmitProperties(CodeTypeDeclaration typeDecl) { base.EmitProperties(typeDecl); foreach ( NavigationProperty navigationProperty in Item.GetDeclaredOnlyMembers() ) { NavigationPropertyEmitter navigationPropertyEmitter = new NavigationPropertyEmitter(Generator, navigationProperty, UsingStandardBaseClass); navigationPropertyEmitter.Emit(typeDecl); } } public override CodeTypeDeclarationCollection EmitApiClass() { CodeTypeDeclarationCollection typeDecls = base.EmitApiClass(); if ( Item.KeyMembers.Count > 0 && typeDecls.Count == 1 ) { // generate xml comments for the key properties CodeTypeDeclaration typeDecl = typeDecls[0]; typeDecl.Comments.Add( new CodeCommentStatement( " ", true ) ); foreach ( EdmMember keyProperty in Item.KeyMembers) { string name = keyProperty.Name; typeDecl.Comments.Add( new CodeCommentStatement( name, true ) ); } typeDecl.Comments.Add( new CodeCommentStatement( " ", true ) ); } return typeDecls; } ////// /// /// protected override void EmitTypeAttributes(CodeTypeDeclaration typeDecl) { Generator.AttributeEmitter.EmitTypeAttributes( this, typeDecl ); base.EmitTypeAttributes( typeDecl ); } ////// /// ///protected override CodeTypeReference GetBaseType() { CodeTypeReference baseType = base.GetBaseType(); if (baseType == null) { baseType = TypeReference.EntityTypeBaseClass; } return baseType; } protected override ReadOnlyMetadataCollection GetProperties() { return Item.Properties; } #endregion #region Public Properties #endregion #region Protected Properties #endregion #region Private Properties /// /// Gets the SchemaElement that this class is generating code for. /// ///public new EntityType Item { get { return base.Item as EntityType; } } #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
- TableItemStyle.cs
- BitmapSizeOptions.cs
- FrameworkElementFactoryMarkupObject.cs
- altserialization.cs
- SqlNotificationRequest.cs
- QueryTaskGroupState.cs
- OleDbDataAdapter.cs
- ArgumentException.cs
- CounterCreationDataCollection.cs
- UndoManager.cs
- QilInvokeEarlyBound.cs
- StateItem.cs
- DesignerHelpers.cs
- StaticContext.cs
- XmlMtomWriter.cs
- PersonalizationStateInfo.cs
- VisualStateChangedEventArgs.cs
- ConnectionDemuxer.cs
- DbgUtil.cs
- AsymmetricSignatureDeformatter.cs
- IconConverter.cs
- TdsRecordBufferSetter.cs
- validation.cs
- Trace.cs
- CommandManager.cs
- DataBoundControlAdapter.cs
- SQLInt16.cs
- CssTextWriter.cs
- TypeValidationEventArgs.cs
- SmiContext.cs
- OleDbSchemaGuid.cs
- TransactionChannelListener.cs
- MenuScrollingVisibilityConverter.cs
- MouseDevice.cs
- TreeNodeStyleCollection.cs
- Hash.cs
- StyleSelector.cs
- hwndwrapper.cs
- BrowserCapabilitiesFactory.cs
- IpcServerChannel.cs
- Attachment.cs
- HelpFileFileNameEditor.cs
- MessageFault.cs
- RadioButtonRenderer.cs
- Pair.cs
- Int64.cs
- DataGridViewLinkCell.cs
- QuadTree.cs
- filewebresponse.cs
- VarRefManager.cs
- NamedPipeTransportBindingElement.cs
- ReceiveMessageAndVerifySecurityAsyncResultBase.cs
- SequenceDesignerAccessibleObject.cs
- LocalizableAttribute.cs
- DesignerDataTableBase.cs
- HttpVersion.cs
- StretchValidation.cs
- BamlTreeMap.cs
- ArraySubsetEnumerator.cs
- OneOfElement.cs
- COM2PropertyDescriptor.cs
- SchemaElementLookUpTableEnumerator.cs
- BCLDebug.cs
- DecoderNLS.cs
- XmlArrayItemAttributes.cs
- PeerNameRecord.cs
- SelectionWordBreaker.cs
- CqlIdentifiers.cs
- PixelShader.cs
- ComponentCommands.cs
- EmbeddedMailObjectsCollection.cs
- SoapObjectInfo.cs
- EncryptedKey.cs
- TextParagraphView.cs
- InvokeHandlers.cs
- HttpDictionary.cs
- Pens.cs
- GatewayDefinition.cs
- DataGridViewCellValidatingEventArgs.cs
- storepermissionattribute.cs
- BitmapEncoder.cs
- HttpInputStream.cs
- SqlStatistics.cs
- ExtendedProperty.cs
- base64Transforms.cs
- DataGridHeaderBorder.cs
- HotSpotCollectionEditor.cs
- SizeConverter.cs
- CodeAccessPermission.cs
- DataSpaceManager.cs
- DynamicEntity.cs
- SqlCacheDependencySection.cs
- AssociationTypeEmitter.cs
- CreationContext.cs
- HelpEvent.cs
- CalendarAutoFormat.cs
- Transform3DCollection.cs
- EncryptedXml.cs
- GeneralTransformGroup.cs
- CodeGroup.cs