Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / UI / WebControls / ReadOnlyDataSource.cs / 1 / 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 } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SafeProcessHandle.cs
- counter.cs
- Typography.cs
- ResourceExpression.cs
- MissingMethodException.cs
- Verify.cs
- TreeNodeClickEventArgs.cs
- WindowCollection.cs
- InternalResources.cs
- Int16AnimationBase.cs
- ConfigXmlElement.cs
- Imaging.cs
- OracleBinary.cs
- ToolBarOverflowPanel.cs
- WebPartCollection.cs
- TabControl.cs
- HMACSHA512.cs
- XmlConvert.cs
- DictionaryEntry.cs
- ObjectHelper.cs
- ContentIterators.cs
- EntityChangedParams.cs
- SystemThemeKey.cs
- SoapFaultCodes.cs
- TypeResolver.cs
- WebPart.cs
- ConsumerConnectionPoint.cs
- CmsUtils.cs
- OleDbInfoMessageEvent.cs
- PrincipalPermission.cs
- ServiceOperationParameter.cs
- CfgSemanticTag.cs
- ResponseStream.cs
- AssertFilter.cs
- OdbcEnvironment.cs
- PeerHopCountAttribute.cs
- TreeViewImageKeyConverter.cs
- DataSourceXmlSerializationAttribute.cs
- JoinSymbol.cs
- CreateUserWizardStep.cs
- MultiView.cs
- RouteUrlExpressionBuilder.cs
- Regex.cs
- SwitchAttribute.cs
- SortQuery.cs
- GroupQuery.cs
- ResolveNameEventArgs.cs
- DispatcherSynchronizationContext.cs
- SqlDataSourceCommandEventArgs.cs
- DataStreamFromComStream.cs
- XmlReflectionMember.cs
- FontFamilyValueSerializer.cs
- Tag.cs
- ResourceExpression.cs
- StylusShape.cs
- CompilerResults.cs
- DetailsViewInsertedEventArgs.cs
- DocumentXmlWriter.cs
- CriticalFinalizerObject.cs
- DataGridViewRowHeaderCell.cs
- LinearKeyFrames.cs
- SqlDuplicator.cs
- IIS7WorkerRequest.cs
- Random.cs
- BindingElementExtensionElement.cs
- DefinitionUpdate.cs
- ExpressionLexer.cs
- SoapEnvelopeProcessingElement.cs
- Lock.cs
- DataGridViewCellStyleChangedEventArgs.cs
- FontDialog.cs
- NavigationPropertyEmitter.cs
- DateRangeEvent.cs
- XmlEventCache.cs
- CounterSampleCalculator.cs
- ProjectionPathSegment.cs
- Decorator.cs
- CompiledXpathExpr.cs
- MetadataItemEmitter.cs
- ZipIOCentralDirectoryBlock.cs
- sqlinternaltransaction.cs
- WebBrowserSiteBase.cs
- CompilationRelaxations.cs
- RemoteWebConfigurationHost.cs
- Argument.cs
- SqlClientPermission.cs
- MainMenu.cs
- DynamicPropertyReader.cs
- BamlVersionHeader.cs
- DoubleUtil.cs
- DbConnectionOptions.cs
- TargetControlTypeCache.cs
- EasingKeyFrames.cs
- SimpleRecyclingCache.cs
- XmlSerializerFactory.cs
- Terminate.cs
- TdsParserStaticMethods.cs
- BuildResult.cs
- BitArray.cs
- InputMethodStateChangeEventArgs.cs