Code:
/ FX-1434 / FX-1434 / 1.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
- BindStream.cs
- HwndKeyboardInputProvider.cs
- TextModifierScope.cs
- Int64Storage.cs
- ChildChangedEventArgs.cs
- ExtenderProvidedPropertyAttribute.cs
- ImportContext.cs
- DiffuseMaterial.cs
- SecurityCriticalDataForSet.cs
- DateTimeConstantAttribute.cs
- CodeStatement.cs
- IChannel.cs
- RijndaelManaged.cs
- PublisherMembershipCondition.cs
- ItemList.cs
- XPathArrayIterator.cs
- PaintEvent.cs
- XamlTreeBuilder.cs
- AtomServiceDocumentSerializer.cs
- DisposableCollectionWrapper.cs
- DataGridViewRowPostPaintEventArgs.cs
- ProviderMetadata.cs
- ChtmlTextWriter.cs
- GB18030Encoding.cs
- infer.cs
- SqlConnectionManager.cs
- ModelItemExtensions.cs
- ExeContext.cs
- ExceptionUtil.cs
- SamlAuthenticationStatement.cs
- XmlValidatingReaderImpl.cs
- ForeignConstraint.cs
- WeakReadOnlyCollection.cs
- PropertyManager.cs
- Point3DConverter.cs
- IteratorAsyncResult.cs
- AssemblyAssociatedContentFileAttribute.cs
- TrackingLocation.cs
- XamlToRtfParser.cs
- RouteValueExpressionBuilder.cs
- ImageField.cs
- RegexCaptureCollection.cs
- ExpandedWrapper.cs
- ViewgenGatekeeper.cs
- StylusButtonEventArgs.cs
- VariableQuery.cs
- EventProviderWriter.cs
- DnsCache.cs
- TimeSpanSecondsOrInfiniteConverter.cs
- SchemaImporterExtensionElementCollection.cs
- UrlAuthFailureHandler.cs
- FillBehavior.cs
- FreezableCollection.cs
- StyleTypedPropertyAttribute.cs
- PrimitiveXmlSerializers.cs
- DesignerSerializationOptionsAttribute.cs
- Point4D.cs
- DataViewListener.cs
- DataRow.cs
- JsonReaderDelegator.cs
- DataGridColumnHeaderAutomationPeer.cs
- UnsafeNativeMethods.cs
- SiteMapDataSource.cs
- WebPartConnectionsEventArgs.cs
- Util.cs
- IntMinMaxAggregationOperator.cs
- SecurityTokenTypes.cs
- MemberBinding.cs
- PageParser.cs
- PackageStore.cs
- metrodevice.cs
- PenCursorManager.cs
- ValueTypeFixupInfo.cs
- WrappedIUnknown.cs
- ObjectHelper.cs
- PropertyPathConverter.cs
- SchemaEntity.cs
- DisplayNameAttribute.cs
- AccessDataSource.cs
- ScrollChrome.cs
- ContainerActivationHelper.cs
- ServiceOperationUIEditor.cs
- DataGridRowEventArgs.cs
- ForceCopyBuildProvider.cs
- Odbc32.cs
- SQLInt16.cs
- XmlAnyAttributeAttribute.cs
- TextSimpleMarkerProperties.cs
- BaseParagraph.cs
- GuidTagList.cs
- CollectionViewGroup.cs
- TypeHelpers.cs
- ValuePattern.cs
- HtmlInputImage.cs
- ClientFormsIdentity.cs
- ConnectorEditor.cs
- CodeTypeParameterCollection.cs
- Interlocked.cs
- GridItemProviderWrapper.cs
- oledbconnectionstring.cs