Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / WebControls / ReadOnlyDataSource.cs / 1305376 / ReadOnlyDataSource.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls { using System; using System.Collections; using System.ComponentModel; using System.Web; using System.Web.UI; using System.Web.Util; ////// Helper class for data bound controls to wrap an generic data source /// with a strongly typed IDataSource. This class automatically handles /// other IDataSources, IEnumerable, and IListSource objects. /// This class uses ReadOnlyDataSourceView to represent individual views. /// internal sealed class ReadOnlyDataSource : IDataSource { private static string[] ViewNames = new string[0]; private string _dataMember; private object _dataSource; public ReadOnlyDataSource(object dataSource, string dataMember) { Debug.Assert(dataSource == null || (dataSource is IEnumerable || dataSource is IDataSource || dataSource is IListSource), "Expected dataSource to be either null, an IEnumerable, an IDataSource, or an IListSource."); _dataSource = dataSource; _dataMember = dataMember; } #region Implementation of IDataSource event EventHandler IDataSource.DataSourceChanged { add { } remove { } } ////// Check for IDataSource, IListSource, and IEnumerable, and return an /// approprite DataSourceView. /// DataSourceView IDataSource.GetView(string viewName) { // Check first for IDataSource IDataSource ds = _dataSource as IDataSource; if (ds != null) { return ds.GetView(viewName); } IEnumerable enumerable = DataSourceHelper.GetResolvedDataSource(_dataSource, _dataMember); return new ReadOnlyDataSourceView(this, _dataMember, enumerable); } ICollection IDataSource.GetViewNames() { return ViewNames; } #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
- AttributeEmitter.cs
- CachingHintValidation.cs
- AssemblyFilter.cs
- SeparatorAutomationPeer.cs
- FixUp.cs
- ADConnectionHelper.cs
- PartialCachingAttribute.cs
- ImageConverter.cs
- Serializer.cs
- Drawing.cs
- NavigateEvent.cs
- MessageTraceRecord.cs
- Size.cs
- DataListCommandEventArgs.cs
- GC.cs
- MachineKeyConverter.cs
- WebPartRestoreVerb.cs
- SchemaImporterExtensionElementCollection.cs
- parserscommon.cs
- StringFormat.cs
- RewritingProcessor.cs
- CharacterHit.cs
- AdPostCacheSubstitution.cs
- Keyboard.cs
- ListenerConfig.cs
- Site.cs
- CacheEntry.cs
- RuntimeVariableList.cs
- XmlSchemaComplexContentRestriction.cs
- ToolStripItemTextRenderEventArgs.cs
- ConnectionManagementElement.cs
- DelegateHelpers.Generated.cs
- WebPartManagerInternals.cs
- ClusterSafeNativeMethods.cs
- SocketPermission.cs
- ScrollEventArgs.cs
- PropertyGeneratedEventArgs.cs
- ResourceReader.cs
- PolicyLevel.cs
- ISFClipboardData.cs
- XmlHierarchicalDataSourceView.cs
- SmtpSpecifiedPickupDirectoryElement.cs
- ColumnClickEvent.cs
- NamespaceCollection.cs
- AvtEvent.cs
- GrammarBuilder.cs
- AvTraceFormat.cs
- ConstructorArgumentAttribute.cs
- RequestCacheValidator.cs
- ByteAnimationBase.cs
- URL.cs
- ClickablePoint.cs
- AdornerPresentationContext.cs
- UriSection.cs
- Propagator.JoinPropagator.cs
- ReflectionUtil.cs
- SHA1.cs
- HtmlSelect.cs
- MenuItemStyle.cs
- PageRanges.cs
- TypeElement.cs
- PageBreakRecord.cs
- UnionQueryOperator.cs
- CellConstant.cs
- SoapParser.cs
- ColorTransformHelper.cs
- HttpCacheVary.cs
- AdvancedBindingPropertyDescriptor.cs
- EditorPartCollection.cs
- Main.cs
- InputBinder.cs
- OleAutBinder.cs
- EntityContainerEmitter.cs
- TextFormatterHost.cs
- CompilerResults.cs
- WebPartDisplayMode.cs
- Directory.cs
- CellQuery.cs
- WebHostUnsafeNativeMethods.cs
- XmlLanguageConverter.cs
- Parameter.cs
- ScalarType.cs
- DiscoveryRequestHandler.cs
- ErrorTableItemStyle.cs
- Size3DConverter.cs
- DebuggerAttributes.cs
- FastEncoder.cs
- AccessDataSourceView.cs
- FontStyleConverter.cs
- ComIntegrationManifestGenerator.cs
- Splitter.cs
- Geometry.cs
- MethodSignatureGenerator.cs
- ResourceContainer.cs
- Visual3D.cs
- LinkDescriptor.cs
- SynchronizedDisposablePool.cs
- SemaphoreFullException.cs
- CodeGenerator.cs
- _ConnectStream.cs