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
- ErasingStroke.cs
- SqlInternalConnectionTds.cs
- Slider.cs
- InstanceOwnerException.cs
- SelectionItemProviderWrapper.cs
- ContainerAction.cs
- CustomMenuItemCollection.cs
- login.cs
- DbDeleteCommandTree.cs
- HandlerMappingMemo.cs
- RegexGroupCollection.cs
- PersonalizationState.cs
- MessageAction.cs
- DataObjectAttribute.cs
- OracleString.cs
- DataSourceCollectionBase.cs
- WebPartDescription.cs
- AppSettingsSection.cs
- datacache.cs
- TextOutput.cs
- AsyncOperation.cs
- PageContentCollection.cs
- RadioButtonList.cs
- ThousandthOfEmRealPoints.cs
- ShapeTypeface.cs
- SingleObjectCollection.cs
- HttpWebRequest.cs
- Material.cs
- CookieParameter.cs
- TlsnegoTokenProvider.cs
- FindSimilarActivitiesVerb.cs
- Button.cs
- NavigationWindowAutomationPeer.cs
- GroupByExpressionRewriter.cs
- RectangleF.cs
- CatalogPartCollection.cs
- CqlErrorHelper.cs
- AmbiguousMatchException.cs
- DeleteHelper.cs
- ConfigXmlCDataSection.cs
- DesignerInterfaces.cs
- TemplateContainer.cs
- DomNameTable.cs
- Brushes.cs
- basecomparevalidator.cs
- MDIWindowDialog.cs
- RootAction.cs
- Not.cs
- Literal.cs
- WSFederationHttpBindingCollectionElement.cs
- ScrollPattern.cs
- ArrangedElementCollection.cs
- NumberFunctions.cs
- LogStore.cs
- ManifestBasedResourceGroveler.cs
- NativeObjectSecurity.cs
- DocumentDesigner.cs
- WebRequestModulesSection.cs
- TemplatePagerField.cs
- PersonalizationEntry.cs
- Blend.cs
- EncryptedReference.cs
- Knowncolors.cs
- BinaryUtilClasses.cs
- BinaryNode.cs
- SrgsElement.cs
- shaperfactoryquerycachekey.cs
- ConfigurationManagerHelperFactory.cs
- InkCanvasFeedbackAdorner.cs
- FieldMetadata.cs
- PathStreamGeometryContext.cs
- AdditionalEntityFunctions.cs
- PasswordBox.cs
- TabControlEvent.cs
- EdmFunctions.cs
- MimeBasePart.cs
- CodeBinaryOperatorExpression.cs
- TextEditor.cs
- FixedSOMContainer.cs
- SetterBase.cs
- ClientUtils.cs
- DbBuffer.cs
- HtmlInputCheckBox.cs
- GridToolTip.cs
- AuthorizationSection.cs
- UIElement3D.cs
- ConstructorExpr.cs
- TextFormatter.cs
- SqlConnectionManager.cs
- GridSplitterAutomationPeer.cs
- ColumnCollection.cs
- XmlNodeComparer.cs
- CroppedBitmap.cs
- PerformanceCounterLib.cs
- MetadataWorkspace.cs
- ListItemConverter.cs
- Registry.cs
- ExceptionValidationRule.cs
- GeneralTransform3DGroup.cs
- DataColumnMapping.cs