Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataWeb / Design / system / Data / EntityModel / Emitters / EntityTypeEmitter.cs / 1305376 / EntityTypeEmitter.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System.CodeDom; 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 (EdmMember member in Item.Members) { NavigationProperty navigationProperty = (member as NavigationProperty); if ((null != navigationProperty) && (navigationProperty.DeclaringType == Item)) { NavigationPropertyEmitter navigationPropertyEmitter = new NavigationPropertyEmitter(Generator, navigationProperty, UsingStandardBaseClass); navigationPropertyEmitter.Emit(typeDecl); } } } [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA2204:Literals should be spelled correctly", MessageId = "KeyProperties")] [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Globalization", "CA1303:Do not pass literals as localized parameters", MessageId = ".ctor")] 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(); 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
- ValidationService.cs
- HttpAsyncResult.cs
- ReturnValue.cs
- PropertyMapper.cs
- SystemMulticastIPAddressInformation.cs
- SchemaType.cs
- ComponentDispatcher.cs
- CompModSwitches.cs
- WebPartMovingEventArgs.cs
- TextEditorMouse.cs
- ReadOnlyDictionary.cs
- QilDataSource.cs
- ProviderCommandInfoUtils.cs
- ServiceOperationListItemList.cs
- HttpProfileGroupBase.cs
- IdentityReference.cs
- ControlCollection.cs
- RuleAttributes.cs
- RegisteredHiddenField.cs
- AttachmentService.cs
- CodeParameterDeclarationExpression.cs
- GroupBoxAutomationPeer.cs
- UserControl.cs
- AsyncOperation.cs
- ResourcePool.cs
- SqlDataSourceFilteringEventArgs.cs
- Positioning.cs
- ObjectStateEntryDbUpdatableDataRecord.cs
- ToolStripRenderEventArgs.cs
- SmtpCommands.cs
- XsdBuilder.cs
- BrowserInteropHelper.cs
- CodeLabeledStatement.cs
- TimeSpan.cs
- WS2007FederationHttpBindingCollectionElement.cs
- CryptoHelper.cs
- WebEventTraceProvider.cs
- MimeMultiPart.cs
- PropertyGeneratedEventArgs.cs
- Compiler.cs
- FormatterServices.cs
- SecurityDescriptor.cs
- TextBounds.cs
- XmlSchemaInferenceException.cs
- GroupPartitionExpr.cs
- VectorCollection.cs
- ContextQuery.cs
- NativeObjectSecurity.cs
- PropertyChangedEventArgs.cs
- RunClient.cs
- KeyProperty.cs
- IndentTextWriter.cs
- FileDialogPermission.cs
- SharedHttpsTransportManager.cs
- TextDecoration.cs
- StrokeCollectionDefaultValueFactory.cs
- SecurityRuntime.cs
- QueryableDataSourceEditData.cs
- ComEventsInfo.cs
- Style.cs
- BamlWriter.cs
- TemplateAction.cs
- ListParaClient.cs
- Help.cs
- InvalidWMPVersionException.cs
- AutomationTextAttribute.cs
- GridViewRowPresenter.cs
- SessionStateSection.cs
- ErrorHandler.cs
- safex509handles.cs
- ZipFileInfoCollection.cs
- StorageEntityTypeMapping.cs
- StorageInfo.cs
- ControlDesigner.cs
- CompilerResults.cs
- QueryCacheManager.cs
- ScriptResourceHandler.cs
- VirtualizedCellInfoCollection.cs
- EventSetter.cs
- DateTimeOffsetConverter.cs
- CheckedPointers.cs
- SQLByte.cs
- RegistryKey.cs
- OrderedDictionary.cs
- WebDisplayNameAttribute.cs
- DocumentAutomationPeer.cs
- XmlSchemaAll.cs
- externdll.cs
- CanonicalFontFamilyReference.cs
- TextCompositionManager.cs
- ObjectStateEntryOriginalDbUpdatableDataRecord.cs
- WindowAutomationPeer.cs
- GuidelineSet.cs
- DataGridViewElement.cs
- XmlChildNodes.cs
- FixedElement.cs
- ErasingStroke.cs
- DecimalAnimation.cs
- ProvideValueServiceProvider.cs
- OracleParameterBinding.cs