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
- BamlVersionHeader.cs
- MouseButtonEventArgs.cs
- ReadWriteObjectLock.cs
- DataSysAttribute.cs
- FileDialog.cs
- EntityPropertyMappingAttribute.cs
- WebControlToolBoxItem.cs
- LogicalExpr.cs
- XmlReflectionMember.cs
- SmtpNegotiateAuthenticationModule.cs
- codemethodreferenceexpression.cs
- AttachedPropertyMethodSelector.cs
- EntityDataSource.cs
- RSACryptoServiceProvider.cs
- TextTreeDeleteContentUndoUnit.cs
- DiagnosticTrace.cs
- WindowsImpersonationContext.cs
- EditorResources.cs
- EncoderReplacementFallback.cs
- Int32AnimationBase.cs
- Classification.cs
- StrokeNodeEnumerator.cs
- SqlCaseSimplifier.cs
- Cursors.cs
- Image.cs
- WebZone.cs
- FtpRequestCacheValidator.cs
- EventMetadata.cs
- TypeCodeDomSerializer.cs
- CopyNodeSetAction.cs
- ContextMarshalException.cs
- RegexCaptureCollection.cs
- FontCollection.cs
- ProfileEventArgs.cs
- XmlSequenceWriter.cs
- DeleteMemberBinder.cs
- UnsafeNativeMethods.cs
- Part.cs
- ObjectSecurity.cs
- SharedPerformanceCounter.cs
- DefaultObjectMappingItemCollection.cs
- IPAddress.cs
- Transform3DGroup.cs
- DeviceContext2.cs
- ByteRangeDownloader.cs
- HostedHttpContext.cs
- HtmlSelect.cs
- InvalidPrinterException.cs
- infer.cs
- FirstMatchCodeGroup.cs
- SrgsRulesCollection.cs
- ToolStripProgressBar.cs
- DependencyObjectType.cs
- DataGridViewAdvancedBorderStyle.cs
- ContextMenuService.cs
- FolderLevelBuildProvider.cs
- MouseActionConverter.cs
- ResourceCodeDomSerializer.cs
- BitmapEditor.cs
- FilterException.cs
- ControlAdapter.cs
- FontCacheLogic.cs
- PathGeometry.cs
- TransactionScope.cs
- DataGrid.cs
- XslVisitor.cs
- ApplicationTrust.cs
- FontFaceLayoutInfo.cs
- GenericEnumConverter.cs
- Base64WriteStateInfo.cs
- DataTableReader.cs
- MetadataCacheItem.cs
- SiteMapDataSourceView.cs
- CommandBinding.cs
- FieldBuilder.cs
- JavaScriptObjectDeserializer.cs
- DictationGrammar.cs
- CaseInsensitiveHashCodeProvider.cs
- CngAlgorithm.cs
- ClientBuildManagerCallback.cs
- ToggleProviderWrapper.cs
- UserUseLicenseDictionaryLoader.cs
- MimeTypeAttribute.cs
- UtilityExtension.cs
- MarshalDirectiveException.cs
- DropSource.cs
- StrokeNodeOperations2.cs
- FontUnit.cs
- ErrorStyle.cs
- ExpressionBindingCollection.cs
- XmlSchemaComplexContentExtension.cs
- querybuilder.cs
- DataGridViewIntLinkedList.cs
- Oid.cs
- XmlEncodedRawTextWriter.cs
- XmlNavigatorStack.cs
- _StreamFramer.cs
- RowSpanVector.cs
- SizeConverter.cs
- WorkflowApplication.cs