Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Metadata / ObjectLayer / LoadMessageLogger.cs / 1305376 / LoadMessageLogger.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Diagnostics; using System.Data.Entity; namespace System.Data.Metadata.Edm { internal class LoadMessageLogger { private Action_logLoadMessage; private Dictionary _messages = new Dictionary (); internal LoadMessageLogger(Action logLoadMessage) { this._logLoadMessage = logLoadMessage; } internal void LogLoadMessage(string message, EdmType relatedType) { if (_logLoadMessage != null) { _logLoadMessage(message); } LogMessagesWithTypeInfo(message, relatedType); } internal string CreateErrorMessageWithTypeSpecificLoadLogs(string errorMessage, EdmType relatedType) { return new StringBuilder(errorMessage) .AppendLine(this.GetTypeRelatedLogMessage(relatedType)).ToString(); } private string GetTypeRelatedLogMessage(EdmType relatedType) { Debug.Assert(relatedType != null, "have to pass in a type to get the message"); if (this._messages.ContainsKey(relatedType)) { return new StringBuilder() .AppendLine() .AppendLine(Strings.ExtraInfo) .AppendLine(this._messages[relatedType].ToString()).ToString(); } else { return string.Empty; } } private void LogMessagesWithTypeInfo(string message, EdmType relatedType) { Debug.Assert(relatedType != null, "have to have a type with this message"); if (this._messages.ContainsKey(relatedType)) { // if this type already contains loading message, append the new message to the end this._messages[relatedType].AppendLine(message); } else { this._messages.Add(relatedType, new StringBuilder(message)); } } } } // 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
- ResourceDictionaryCollection.cs
- CodeBlockBuilder.cs
- ImageCodecInfoPrivate.cs
- _AutoWebProxyScriptHelper.cs
- safex509handles.cs
- BindingContext.cs
- ApplicationDirectoryMembershipCondition.cs
- ExpressionBindingCollection.cs
- ColumnMapTranslator.cs
- UserNameSecurityTokenAuthenticator.cs
- ColorConverter.cs
- ParameterRetriever.cs
- PageCodeDomTreeGenerator.cs
- BitmapEffect.cs
- SqlInfoMessageEvent.cs
- ErasingStroke.cs
- PtsCache.cs
- DataBoundControlHelper.cs
- ContainerParagraph.cs
- UserControlDocumentDesigner.cs
- UniqueEventHelper.cs
- TimeZone.cs
- StyleTypedPropertyAttribute.cs
- OuterGlowBitmapEffect.cs
- Msec.cs
- HTMLTextWriter.cs
- EdmPropertyAttribute.cs
- WebPartDisplayModeEventArgs.cs
- ImageFormatConverter.cs
- EventHandlerService.cs
- ResolveCriteria.cs
- PageParser.cs
- AudioException.cs
- DataGridViewImageColumn.cs
- GeneralTransform3D.cs
- AdvancedBindingPropertyDescriptor.cs
- SoapMessage.cs
- DecoderReplacementFallback.cs
- InfoCardSymmetricAlgorithm.cs
- ModuleConfigurationInfo.cs
- MetadataProperty.cs
- NameValuePair.cs
- ContractNamespaceAttribute.cs
- AccessDataSourceDesigner.cs
- DefaultSettingsSection.cs
- PeerCredentialElement.cs
- OpenTypeLayoutCache.cs
- AuthenticationModuleElementCollection.cs
- DocumentEventArgs.cs
- ContentFileHelper.cs
- XmlCodeExporter.cs
- WeakReference.cs
- KeyBinding.cs
- UpdatePanelTriggerCollection.cs
- CacheHelper.cs
- UserControlBuildProvider.cs
- DataGridViewIntLinkedList.cs
- ExpressionParser.cs
- DataGridViewRowCancelEventArgs.cs
- DataGridParentRows.cs
- ClientUtils.cs
- BamlVersionHeader.cs
- TcpStreams.cs
- RtfControlWordInfo.cs
- ToolStripItemDataObject.cs
- TextContainerHelper.cs
- DayRenderEvent.cs
- JulianCalendar.cs
- XPathNavigatorKeyComparer.cs
- DataGridViewLinkColumn.cs
- TableColumn.cs
- HtmlGenericControl.cs
- CompressedStack.cs
- BulletedList.cs
- DataGridViewColumnTypeEditor.cs
- ConstraintEnumerator.cs
- DateTimeFormatInfo.cs
- EFDataModelProvider.cs
- Rotation3DAnimationBase.cs
- AjaxFrameworkAssemblyAttribute.cs
- RawKeyboardInputReport.cs
- LineServicesRun.cs
- BrowserInteropHelper.cs
- X509ChainElement.cs
- IntPtr.cs
- ProcessThreadCollection.cs
- TransformProviderWrapper.cs
- ListCommandEventArgs.cs
- CaseKeyBox.ViewModel.cs
- FormViewModeEventArgs.cs
- TextBoxBase.cs
- InstanceDescriptor.cs
- ToolStripContextMenu.cs
- PathBox.cs
- HtmlControlPersistable.cs
- SvcMapFileSerializer.cs
- CollaborationHelperFunctions.cs
- PageClientProxyGenerator.cs
- WorkItem.cs
- Currency.cs