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
- _ShellExpression.cs
- TreeNodeEventArgs.cs
- LowerCaseStringConverter.cs
- OpacityConverter.cs
- XmlAnyElementAttribute.cs
- XPathEmptyIterator.cs
- SapiGrammar.cs
- GroupBox.cs
- DynamicScriptObject.cs
- URI.cs
- TreeViewImageKeyConverter.cs
- EntityModelBuildProvider.cs
- TileBrush.cs
- CalendarDayButton.cs
- NonParentingControl.cs
- SortAction.cs
- FilterQueryOptionExpression.cs
- InternalControlCollection.cs
- DictionaryBase.cs
- BamlTreeMap.cs
- TemplatePagerField.cs
- AffineTransform3D.cs
- LogicalTreeHelper.cs
- ItemChangedEventArgs.cs
- ButtonRenderer.cs
- XmlILStorageConverter.cs
- DeviceFilterDictionary.cs
- BitmapPalettes.cs
- SpecularMaterial.cs
- QuotedStringWriteStateInfo.cs
- Merger.cs
- GroupBoxRenderer.cs
- AppModelKnownContentFactory.cs
- WebExceptionStatus.cs
- ImportCatalogPart.cs
- SimpleFieldTemplateFactory.cs
- SoapInteropTypes.cs
- SafeNativeMethods.cs
- DataControlFieldHeaderCell.cs
- TreeNodeClickEventArgs.cs
- DataConnectionHelper.cs
- ControlCollection.cs
- SafeBitVector32.cs
- EmptyControlCollection.cs
- DataRelation.cs
- JsonFormatReaderGenerator.cs
- StateMachineTimers.cs
- Operator.cs
- Nullable.cs
- rsa.cs
- DataFormats.cs
- CrossSiteScriptingValidation.cs
- XmlSchemaSequence.cs
- PolyQuadraticBezierSegment.cs
- PathSegment.cs
- AsyncStreamReader.cs
- CodeDelegateCreateExpression.cs
- MachineKeyConverter.cs
- TextElementEnumerator.cs
- TreeNodeEventArgs.cs
- SrgsRulesCollection.cs
- ScriptReferenceBase.cs
- MdiWindowListStrip.cs
- DataColumnMapping.cs
- TrackBar.cs
- DBCommand.cs
- DataGridViewDataErrorEventArgs.cs
- ButtonChrome.cs
- documentsequencetextview.cs
- XmlUrlResolver.cs
- CheckedListBox.cs
- CryptographicAttribute.cs
- _UriTypeConverter.cs
- TreeView.cs
- StreamResourceInfo.cs
- RightsManagementPermission.cs
- RecordsAffectedEventArgs.cs
- XmlRootAttribute.cs
- SqlDataSourceSummaryPanel.cs
- ButtonBaseAdapter.cs
- CodeTypeDelegate.cs
- IpcManager.cs
- FileAuthorizationModule.cs
- FlowDocumentPaginator.cs
- CustomLineCap.cs
- ReflectTypeDescriptionProvider.cs
- Util.cs
- Rectangle.cs
- RtfNavigator.cs
- DataProtection.cs
- UITypeEditor.cs
- BinaryExpression.cs
- ComplexType.cs
- TreeNodeCollection.cs
- ClickablePoint.cs
- Matrix3DStack.cs
- HttpConfigurationContext.cs
- MenuItemStyle.cs
- ListViewItemMouseHoverEvent.cs
- CheckBoxBaseAdapter.cs