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
- COM2PropertyDescriptor.cs
- ListViewTableCell.cs
- XpsResourcePolicy.cs
- CharacterHit.cs
- ReadOnlyDataSource.cs
- ChannelPool.cs
- ReaderWriterLockWrapper.cs
- PictureBox.cs
- QilVisitor.cs
- MachineSettingsSection.cs
- WebPartManagerInternals.cs
- ScrollBarAutomationPeer.cs
- CodeTypeParameter.cs
- DataGridViewCell.cs
- InheritanceAttribute.cs
- TimelineGroup.cs
- WebPartDisplayModeCollection.cs
- SiteOfOriginPart.cs
- CodeExpressionStatement.cs
- CollectionBuilder.cs
- ProgressPage.cs
- UnknownBitmapDecoder.cs
- UnsafeNativeMethodsCLR.cs
- SparseMemoryStream.cs
- Buffer.cs
- IPipelineRuntime.cs
- DataSourceComponent.cs
- HtmlTernaryTree.cs
- NullRuntimeConfig.cs
- transactioncontext.cs
- LowerCaseStringConverter.cs
- IntSumAggregationOperator.cs
- FrameworkElement.cs
- ListBindingConverter.cs
- DbReferenceCollection.cs
- TransportBindingElement.cs
- VersionedStreamOwner.cs
- Emitter.cs
- ConnectionInterfaceCollection.cs
- Environment.cs
- XmlCountingReader.cs
- AppDomain.cs
- HostProtectionPermission.cs
- SubclassTypeValidator.cs
- ToolTipService.cs
- GeometryGroup.cs
- Application.cs
- PreProcessInputEventArgs.cs
- ContextBase.cs
- Ref.cs
- EmptyControlCollection.cs
- LinearKeyFrames.cs
- HTMLTagNameToTypeMapper.cs
- ExpressionBuilderCollection.cs
- DbTransaction.cs
- Rectangle.cs
- IPGlobalProperties.cs
- EditorOptionAttribute.cs
- SiteMembershipCondition.cs
- DataGridViewUtilities.cs
- GridToolTip.cs
- Freezable.cs
- ErrorRuntimeConfig.cs
- WmlPhoneCallAdapter.cs
- StrokeNodeEnumerator.cs
- PingOptions.cs
- PageParser.cs
- MULTI_QI.cs
- FontSourceCollection.cs
- Collection.cs
- ISAPIWorkerRequest.cs
- RegistrySecurity.cs
- BuildResult.cs
- XmlSchemaDatatype.cs
- XPathPatternBuilder.cs
- ToolStripItemImageRenderEventArgs.cs
- activationcontext.cs
- WindowsFormsSectionHandler.cs
- DeploymentExceptionMapper.cs
- XamlWriterExtensions.cs
- ContentDisposition.cs
- HMAC.cs
- HwndSourceKeyboardInputSite.cs
- XsltSettings.cs
- ContentElementAutomationPeer.cs
- ProfileModule.cs
- DataSourceProvider.cs
- QueryConverter.cs
- ObfuscationAttribute.cs
- Track.cs
- WorkflowQueuingService.cs
- LinkLabel.cs
- Transaction.cs
- HttpListenerRequest.cs
- ApplicationSecurityInfo.cs
- SmiContextFactory.cs
- SymmetricKeyWrap.cs
- HtmlInputImage.cs
- XmlAnyElementAttribute.cs
- ToolStripDropDownItem.cs