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
- XmlWriter.cs
- PrintDocument.cs
- Lock.cs
- _HeaderInfoTable.cs
- HighlightOverlayGlyph.cs
- ToolStripTextBox.cs
- SrgsGrammar.cs
- InfoCardRSAOAEPKeyExchangeDeformatter.cs
- SafeTokenHandle.cs
- LambdaCompiler.ControlFlow.cs
- ObjectConverter.cs
- ProtocolsInstallComponent.cs
- DeviceFiltersSection.cs
- GroupBoxRenderer.cs
- WizardForm.cs
- KeyboardNavigation.cs
- ValueTypeIndexerReference.cs
- PrimitiveXmlSerializers.cs
- InputLanguageProfileNotifySink.cs
- SoapElementAttribute.cs
- QueryOperatorEnumerator.cs
- DefaultWorkflowLoaderService.cs
- CalendarTable.cs
- BindingWorker.cs
- ParserContext.cs
- BitmapCodecInfo.cs
- AnimationStorage.cs
- FixedBufferAttribute.cs
- InternalDuplexBindingElement.cs
- HatchBrush.cs
- filewebresponse.cs
- DataGridViewAutoSizeColumnsModeEventArgs.cs
- XmlILOptimizerVisitor.cs
- OleCmdHelper.cs
- MouseGesture.cs
- AuthorizationRuleCollection.cs
- Int32RectConverter.cs
- SqlBulkCopy.cs
- DynamicResourceExtension.cs
- _HTTPDateParse.cs
- FileDialogPermission.cs
- AuthorizationSection.cs
- Evaluator.cs
- JsonReaderWriterFactory.cs
- XmlQueryType.cs
- IndependentAnimationStorage.cs
- SoapServerMessage.cs
- RoutedCommand.cs
- DataAdapter.cs
- DataSpaceManager.cs
- CalendarAutomationPeer.cs
- FrameworkPropertyMetadata.cs
- DeviceContext.cs
- CodeCommentStatement.cs
- SecurityTokenProviderContainer.cs
- TextStore.cs
- DataView.cs
- TypeUtils.cs
- LocationInfo.cs
- CounterSampleCalculator.cs
- DataObjectMethodAttribute.cs
- HashMembershipCondition.cs
- TlsnegoTokenProvider.cs
- CompiledXpathExpr.cs
- LinkButton.cs
- DebuggerAttributes.cs
- IPAddress.cs
- FixedSOMPage.cs
- LoginName.cs
- Configuration.cs
- ReadContentAsBinaryHelper.cs
- RegularExpressionValidator.cs
- SystemIPGlobalStatistics.cs
- WizardPanel.cs
- EditorPartCollection.cs
- SQLDouble.cs
- FontStretch.cs
- HtmlElementEventArgs.cs
- StsCommunicationException.cs
- XmlSchema.cs
- QilValidationVisitor.cs
- XmlIlVisitor.cs
- XsltCompileContext.cs
- XpsFilter.cs
- ByteStreamMessageUtility.cs
- XpsSerializerWriter.cs
- UnsafeNativeMethods.cs
- DataBindingHandlerAttribute.cs
- QueryResponse.cs
- SmtpFailedRecipientsException.cs
- TraceListeners.cs
- BufferedOutputStream.cs
- DiscreteKeyFrames.cs
- WpfKnownType.cs
- InfoCardAsymmetricCrypto.cs
- EntityContainer.cs
- AddDataControlFieldDialog.cs
- Translator.cs
- ThreadWorkerController.cs
- AsyncContentLoadedEventArgs.cs