Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / xsp / System / Web / UI / WebParts / WebPartTracker.cs / 1 / WebPartTracker.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls.WebParts { using System; using System.Collections; using System.ComponentModel; using System.Diagnostics; using System.Drawing.Design; using System.Security.Permissions; using System.Web; using System.Web.UI; [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class WebPartTracker : IDisposable { private bool _disposed; private WebPart _webPart; private ProviderConnectionPoint _providerConnectionPoint; public WebPartTracker(WebPart webPart, ProviderConnectionPoint providerConnectionPoint) { if (webPart == null) { throw new ArgumentNullException("webPart"); } if (providerConnectionPoint == null) { throw new ArgumentNullException("providerConnectionPoint"); } if (providerConnectionPoint.ControlType != webPart.GetType()) { throw new ArgumentException(SR.GetString(SR.WebPartManager_InvalidConnectionPoint), "providerConnectionPoint"); } _webPart = webPart; _providerConnectionPoint = providerConnectionPoint; if (++Count > 1) { webPart.SetConnectErrorMessage(SR.GetString( SR.WebPartTracker_CircularConnection, _providerConnectionPoint.DisplayName)); } } public bool IsCircularConnection { get { return (Count > 1); } } private int Count { get { int count; _webPart.TrackerCounter.TryGetValue(_providerConnectionPoint, out count); return count; } set { _webPart.TrackerCounter[_providerConnectionPoint] = value; } } void IDisposable.Dispose() { if (!_disposed) { Debug.Assert(Count >= 1); Count--; _disposed = true; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls.WebParts { using System; using System.Collections; using System.ComponentModel; using System.Diagnostics; using System.Drawing.Design; using System.Security.Permissions; using System.Web; using System.Web.UI; [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class WebPartTracker : IDisposable { private bool _disposed; private WebPart _webPart; private ProviderConnectionPoint _providerConnectionPoint; public WebPartTracker(WebPart webPart, ProviderConnectionPoint providerConnectionPoint) { if (webPart == null) { throw new ArgumentNullException("webPart"); } if (providerConnectionPoint == null) { throw new ArgumentNullException("providerConnectionPoint"); } if (providerConnectionPoint.ControlType != webPart.GetType()) { throw new ArgumentException(SR.GetString(SR.WebPartManager_InvalidConnectionPoint), "providerConnectionPoint"); } _webPart = webPart; _providerConnectionPoint = providerConnectionPoint; if (++Count > 1) { webPart.SetConnectErrorMessage(SR.GetString( SR.WebPartTracker_CircularConnection, _providerConnectionPoint.DisplayName)); } } public bool IsCircularConnection { get { return (Count > 1); } } private int Count { get { int count; _webPart.TrackerCounter.TryGetValue(_providerConnectionPoint, out count); return count; } set { _webPart.TrackerCounter[_providerConnectionPoint] = value; } } void IDisposable.Dispose() { if (!_disposed) { Debug.Assert(Count >= 1); Count--; _disposed = true; } } } } // 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
- MemberInfoSerializationHolder.cs
- LogicalCallContext.cs
- OpCodes.cs
- EntityReference.cs
- ValueUnavailableException.cs
- SubMenuStyleCollectionEditor.cs
- StreamResourceInfo.cs
- Stack.cs
- PageContentAsyncResult.cs
- RtfNavigator.cs
- SoapEnumAttribute.cs
- WindowInteractionStateTracker.cs
- BindingContext.cs
- TogglePatternIdentifiers.cs
- GenericAuthenticationEventArgs.cs
- arc.cs
- LockCookie.cs
- SqlClientWrapperSmiStream.cs
- cookie.cs
- XslNumber.cs
- MasterPageParser.cs
- ClearTypeHintValidation.cs
- ImpersonationOption.cs
- WebRequestModuleElement.cs
- IpcChannelHelper.cs
- MetadataException.cs
- GridErrorDlg.cs
- PeerCollaboration.cs
- ProfileService.cs
- BitmapEffectState.cs
- BamlRecordWriter.cs
- DownloadProgressEventArgs.cs
- UnsafeCollabNativeMethods.cs
- _HeaderInfo.cs
- SafeNativeMethods.cs
- DataGridCellsPresenter.cs
- LocalFileSettingsProvider.cs
- WebHeaderCollection.cs
- TextTrailingWordEllipsis.cs
- SymLanguageVendor.cs
- TdsParserStateObject.cs
- Compress.cs
- ContextMarshalException.cs
- TemplatePropertyEntry.cs
- RuleSettings.cs
- SubMenuStyleCollection.cs
- BindingExpressionBase.cs
- SymmetricSecurityProtocol.cs
- Menu.cs
- SchemaElementDecl.cs
- DataIdProcessor.cs
- CompositeFontParser.cs
- TextParagraphView.cs
- arabicshape.cs
- XmlSchemaValidationException.cs
- XamlFilter.cs
- WorkflowClientDeliverMessageWrapper.cs
- CheckBoxPopupAdapter.cs
- OrderedHashRepartitionStream.cs
- MetadataWorkspace.cs
- AsyncResult.cs
- XPathNodePointer.cs
- File.cs
- BaseAddressElementCollection.cs
- EnumUnknown.cs
- ISessionStateStore.cs
- WmlMobileTextWriter.cs
- sqlinternaltransaction.cs
- OleDbWrapper.cs
- UnsafePeerToPeerMethods.cs
- OleDbConnection.cs
- BaseConfigurationRecord.cs
- ToolStripRenderEventArgs.cs
- BrowserCapabilitiesFactoryBase.cs
- BuiltInExpr.cs
- PackageStore.cs
- PageHandlerFactory.cs
- ActionItem.cs
- AtomEntry.cs
- SharedStream.cs
- UniformGrid.cs
- Blend.cs
- Site.cs
- DbProviderFactoriesConfigurationHandler.cs
- SoapServerMethod.cs
- StylusDownEventArgs.cs
- SmtpException.cs
- HtmlInputButton.cs
- IndexerNameAttribute.cs
- ToolStripKeyboardHandlingService.cs
- ClientTargetSection.cs
- LocatorGroup.cs
- SecurityContext.cs
- SqlTriggerContext.cs
- RegexWorker.cs
- OutputBuffer.cs
- SmtpCommands.cs
- ListBoxItem.cs
- CacheDependency.cs
- CursorInteropHelper.cs