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
- DesignerCatalogPartChrome.cs
- SettingsBase.cs
- FontStyleConverter.cs
- COM2TypeInfoProcessor.cs
- Filter.cs
- BitmapCache.cs
- bidPrivateBase.cs
- CachedPathData.cs
- CachingHintValidation.cs
- CustomErrorsSectionWrapper.cs
- VersionPair.cs
- TiffBitmapDecoder.cs
- DispatchOperation.cs
- PackWebRequestFactory.cs
- FtpRequestCacheValidator.cs
- StringBlob.cs
- CacheMemory.cs
- CancellationTokenRegistration.cs
- ExpressionNormalizer.cs
- AdapterDictionary.cs
- _StreamFramer.cs
- EUCJPEncoding.cs
- StorageBasedPackageProperties.cs
- CategoryNameCollection.cs
- SecurityPermission.cs
- CaseStatement.cs
- Int32AnimationBase.cs
- AuthenticationService.cs
- AutoScrollExpandMessageFilter.cs
- Subset.cs
- DESCryptoServiceProvider.cs
- ProfileBuildProvider.cs
- Variant.cs
- Pkcs7Recipient.cs
- DataTableClearEvent.cs
- CounterSampleCalculator.cs
- SessionStateItemCollection.cs
- AudioFormatConverter.cs
- DependencyPropertyKind.cs
- DataGridViewRowPrePaintEventArgs.cs
- ZipIOLocalFileDataDescriptor.cs
- WsatConfiguration.cs
- PerformanceCounterCategory.cs
- ProvidersHelper.cs
- FastEncoderStatics.cs
- HierarchicalDataBoundControl.cs
- documentsequencetextpointer.cs
- HttpCapabilitiesBase.cs
- DecoderReplacementFallback.cs
- RenderingBiasValidation.cs
- Dump.cs
- LongTypeConverter.cs
- MetadataHelper.cs
- ObjectDataSourceFilteringEventArgs.cs
- ExternalException.cs
- Int64.cs
- MetaTable.cs
- DbConnectionHelper.cs
- TraceData.cs
- CodePageEncoding.cs
- NativeMethods.cs
- FilteredDataSetHelper.cs
- ServiceDescriptionData.cs
- ValidatedControlConverter.cs
- Collection.cs
- securitycriticaldataformultiplegetandset.cs
- LinqDataSourceUpdateEventArgs.cs
- MasterPageCodeDomTreeGenerator.cs
- CngProvider.cs
- UnsafeNativeMethods.cs
- XmlCharacterData.cs
- AmbientEnvironment.cs
- ToolBar.cs
- SiteMapNodeItem.cs
- PriorityRange.cs
- base64Transforms.cs
- TreeNodeMouseHoverEvent.cs
- NegotiateStream.cs
- PowerModeChangedEventArgs.cs
- StaticTextPointer.cs
- RunClient.cs
- RenderContext.cs
- ConfigurationSection.cs
- SID.cs
- FullTextLine.cs
- XamlFigureLengthSerializer.cs
- WebPartChrome.cs
- SqlGatherProducedAliases.cs
- ModuleBuilder.cs
- Latin1Encoding.cs
- HtmlSelectionListAdapter.cs
- BinaryParser.cs
- XmlEnumAttribute.cs
- ObjectHelper.cs
- Attributes.cs
- MetafileHeaderEmf.cs
- TransportSecurityBindingElement.cs
- TextServicesProperty.cs
- FieldBuilder.cs
- ErrorHandler.cs