Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / DynamicData / DynamicData / ModelProviders / SimpleTableProvider.cs / 1305376 / SimpleTableProvider.cs
namespace System.Web.DynamicData.ModelProviders { using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Collections.ObjectModel; using System.ComponentModel; internal sealed class SimpleTableProvider : TableProvider { private List_columns; private ICustomTypeDescriptor _descriptor; public SimpleTableProvider(DataModelProvider modelProvider, Type entityType) : base(modelProvider) { if (entityType == null) { throw new ArgumentNullException("entityType"); } EntityType = entityType; Name = entityType.Name; DataContextPropertyName = String.Empty; InitializeColumns(TypeDescriptor.GetProperties(entityType)); } public SimpleTableProvider(DataModelProvider modelProvider, ICustomTypeDescriptor descriptor) : base(modelProvider) { if (descriptor == null) { throw new ArgumentNullException("descriptor"); } _descriptor = descriptor; Name = descriptor.GetClassName(); DataContextPropertyName = String.Empty; InitializeColumns(descriptor.GetProperties()); } public override ReadOnlyCollection Columns { get { return _columns.AsReadOnly(); } } public override ICustomTypeDescriptor GetTypeDescriptor() { return _descriptor ?? base.GetTypeDescriptor(); } public override IQueryable GetQuery(object context) { throw new NotSupportedException(); } private void InitializeColumns(PropertyDescriptorCollection columnDescriptors) { _columns = columnDescriptors.OfType ().Select(p => new SimpleColumnProvider(this, p)).OfType ().ToList(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. namespace System.Web.DynamicData.ModelProviders { using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Collections.ObjectModel; using System.ComponentModel; internal sealed class SimpleTableProvider : TableProvider { private List _columns; private ICustomTypeDescriptor _descriptor; public SimpleTableProvider(DataModelProvider modelProvider, Type entityType) : base(modelProvider) { if (entityType == null) { throw new ArgumentNullException("entityType"); } EntityType = entityType; Name = entityType.Name; DataContextPropertyName = String.Empty; InitializeColumns(TypeDescriptor.GetProperties(entityType)); } public SimpleTableProvider(DataModelProvider modelProvider, ICustomTypeDescriptor descriptor) : base(modelProvider) { if (descriptor == null) { throw new ArgumentNullException("descriptor"); } _descriptor = descriptor; Name = descriptor.GetClassName(); DataContextPropertyName = String.Empty; InitializeColumns(descriptor.GetProperties()); } public override ReadOnlyCollection Columns { get { return _columns.AsReadOnly(); } } public override ICustomTypeDescriptor GetTypeDescriptor() { return _descriptor ?? base.GetTypeDescriptor(); } public override IQueryable GetQuery(object context) { throw new NotSupportedException(); } private void InitializeColumns(PropertyDescriptorCollection columnDescriptors) { _columns = columnDescriptors.OfType ().Select(p => new SimpleColumnProvider(this, p)).OfType ().ToList(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- AssemblyInfo.cs
- ScopelessEnumAttribute.cs
- DragEventArgs.cs
- SystemWebSectionGroup.cs
- MetadataCollection.cs
- HttpHandlerActionCollection.cs
- SqlCommand.cs
- NameValuePermission.cs
- HttpRequestCacheValidator.cs
- AppSettingsExpressionBuilder.cs
- CharAnimationUsingKeyFrames.cs
- GeneralTransform3DCollection.cs
- InfiniteIntConverter.cs
- WindowsListViewGroupHelper.cs
- figurelengthconverter.cs
- ObservableDictionary.cs
- SelectedDatesCollection.cs
- SecurityException.cs
- BlockExpression.cs
- RequestTimeoutManager.cs
- UnsafeNetInfoNativeMethods.cs
- IpcManager.cs
- TrustManagerMoreInformation.cs
- AuthenticationSection.cs
- MDIControlStrip.cs
- InputReport.cs
- RoutedCommand.cs
- TextHidden.cs
- CodeCompiler.cs
- ShapingEngine.cs
- AmbientEnvironment.cs
- PanelStyle.cs
- XPathAncestorQuery.cs
- WebPartManagerInternals.cs
- PassportAuthenticationEventArgs.cs
- AutoSizeComboBox.cs
- SafeFileMappingHandle.cs
- MergeFilterQuery.cs
- EncryptedData.cs
- PropertyTab.cs
- XComponentModel.cs
- ProfilePropertyNameValidator.cs
- CodeGenerator.cs
- EventBuilder.cs
- Geometry3D.cs
- CodeComment.cs
- Command.cs
- XmlSchemaAppInfo.cs
- EventEntry.cs
- CheckPair.cs
- Journal.cs
- DesignerDataStoredProcedure.cs
- IisTraceListener.cs
- StringAnimationBase.cs
- FeatureManager.cs
- LambdaCompiler.Statements.cs
- CurrencyWrapper.cs
- PenCursorManager.cs
- SendSecurityHeaderElement.cs
- TextEditorThreadLocalStore.cs
- WeakEventTable.cs
- RuleSetCollection.cs
- BeginCreateSecurityTokenRequest.cs
- OdbcEnvironment.cs
- ConfigurationManagerHelper.cs
- Pen.cs
- WebBrowserDocumentCompletedEventHandler.cs
- SpeechSynthesizer.cs
- ActivationWorker.cs
- ObjectContext.cs
- TypeDescriptionProviderAttribute.cs
- NumberAction.cs
- InvalidFilterCriteriaException.cs
- LazyLoadBehavior.cs
- DependencyPropertyAttribute.cs
- DoubleMinMaxAggregationOperator.cs
- QuotaThrottle.cs
- FormViewCommandEventArgs.cs
- WindowsComboBox.cs
- CodeGeneratorOptions.cs
- ToolStripGripRenderEventArgs.cs
- HotSpot.cs
- SQLGuid.cs
- UInt64Converter.cs
- ResourceSet.cs
- PagerSettings.cs
- RemoteX509Token.cs
- WindowCollection.cs
- WhitespaceRule.cs
- TypeDescriptorContext.cs
- MouseWheelEventArgs.cs
- Timer.cs
- AppDomainProtocolHandler.cs
- AssemblyCollection.cs
- WebPartCloseVerb.cs
- CngKeyBlobFormat.cs
- ScriptResourceDefinition.cs
- EntityDataSourceDesigner.cs
- MatrixValueSerializer.cs
- SiteMapHierarchicalDataSourceView.cs