Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DLinq / Dlinq / SqlClient / Common / SqlNodeAnnotations.cs / 1305376 / SqlNodeAnnotations.cs
using System;
using System.Collections.Generic;
using System.Text;
namespace System.Data.Linq.SqlClient {
///
/// Associate annotations with SqlNodes.
///
internal class SqlNodeAnnotations {
Dictionary> annotationMap = new Dictionary>();
Dictionary uniqueTypes = new Dictionary();
///
/// Add an annotation to the given node.
///
internal void Add(SqlNode node, SqlNodeAnnotation annotation) {
List list = null;
if (!this.annotationMap.TryGetValue(node, out list)) {
list = new List();
this.annotationMap[node]=list;
}
uniqueTypes[annotation.GetType()] = String.Empty;
list.Add(annotation);
}
///
/// Gets the annotations for the given node. Null if none.
///
internal List Get(SqlNode node) {
List list = null;
this.annotationMap.TryGetValue(node, out list);
return list;
}
///
/// Whether the given node has annotations.
///
internal bool NodeIsAnnotated(SqlNode node) {
if (node == null)
return false;
return this.annotationMap.ContainsKey(node);
}
///
/// Checks whether there's at least one annotation of the given type.
///
internal bool HasAnnotationType(Type type) {
return this.uniqueTypes.ContainsKey(type);
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ComAdminInterfaces.cs
- IListConverters.cs
- HttpFileCollectionWrapper.cs
- PointAnimation.cs
- ClusterSafeNativeMethods.cs
- AlternateView.cs
- httpstaticobjectscollection.cs
- BufferModesCollection.cs
- StatusBarPanel.cs
- LongTypeConverter.cs
- OptimizerPatterns.cs
- ClientRequest.cs
- FilteredDataSetHelper.cs
- DocumentViewerBase.cs
- RedBlackList.cs
- ImageField.cs
- SqlUtils.cs
- ValueProviderWrapper.cs
- SecurityContextSecurityTokenParameters.cs
- ReadWriteSpinLock.cs
- FullTextBreakpoint.cs
- ChangeBlockUndoRecord.cs
- ComboBoxHelper.cs
- SQLChars.cs
- ScriptResourceAttribute.cs
- TraceSource.cs
- JsonFormatGeneratorStatics.cs
- TemplateControl.cs
- XmlSchemaObject.cs
- OnOperation.cs
- IPipelineRuntime.cs
- ExpressionLink.cs
- RSAPKCS1KeyExchangeDeformatter.cs
- TextBlock.cs
- FillRuleValidation.cs
- ViewStateModeByIdAttribute.cs
- BufferAllocator.cs
- WindowsGrip.cs
- InternalTypeHelper.cs
- DefaultPerformanceCounters.cs
- TickBar.cs
- TaskForm.cs
- DiscreteKeyFrames.cs
- XmlDataSourceView.cs
- ContentPosition.cs
- ImageCodecInfoPrivate.cs
- AvTraceFormat.cs
- FlowDocumentPaginator.cs
- StaticExtensionConverter.cs
- NativeWindow.cs
- DeflateInput.cs
- FixedSOMLineRanges.cs
- SrgsElementFactory.cs
- ScrollableControl.cs
- ExtensionElement.cs
- XamlRtfConverter.cs
- ToolStripPanelRow.cs
- InkCollectionBehavior.cs
- FontStyles.cs
- DataGridViewTextBoxCell.cs
- TextBoxView.cs
- DataIdProcessor.cs
- LazyLoadBehavior.cs
- TreeNode.cs
- InstanceDescriptor.cs
- BuildManagerHost.cs
- FormViewPagerRow.cs
- StateChangeEvent.cs
- EdmError.cs
- WebRequestModuleElementCollection.cs
- KeyValuePairs.cs
- XmlHelper.cs
- Rss20ItemFormatter.cs
- PolicyValidator.cs
- ApplicationGesture.cs
- BackgroundFormatInfo.cs
- XamlDesignerSerializationManager.cs
- AssemblyBuilder.cs
- CSharpCodeProvider.cs
- SafeThreadHandle.cs
- COM2TypeInfoProcessor.cs
- BrowserCapabilitiesFactoryBase.cs
- PrimaryKeyTypeConverter.cs
- Internal.cs
- PersistenceProviderFactory.cs
- SiteMapNodeItem.cs
- TransactionsSectionGroup.cs
- BufferedGraphicsManager.cs
- HwndKeyboardInputProvider.cs
- CaseCqlBlock.cs
- DXD.cs
- XMLUtil.cs
- SchemaNames.cs
- TableColumn.cs
- TimelineGroup.cs
- FixedSOMTable.cs
- XmlQueryContext.cs
- Adorner.cs
- System.Data_BID.cs
- DataSet.cs