Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WebForms / System / Web / UI / Design / BaseTypeViewSchema.cs / 1 / BaseTypeViewSchema.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.Design { using System; using System.Collections; using System.ComponentModel; using System.Diagnostics; using System.Reflection; ////// Represents a view's schema based on a Type object retrieved /// through Reflection. This is the base class for several view schema /// types. /// [System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand, Flags = System.Security.Permissions.SecurityPermissionFlag.UnmanagedCode)] internal abstract class BaseTypeViewSchema : IDataSourceViewSchema { private Type _type; private string _viewName; protected BaseTypeViewSchema(string viewName, Type type) { Debug.Assert(type != null); _type = type; _viewName = viewName; } public IDataSourceFieldSchema[] GetFields() { // Search for indexer property System.Collections.Generic.Listfields = new System.Collections.Generic.List (); Type rowType = GetRowType(_type); if (rowType != null) { // We specifically don't get schema when the type implements // ICustomTypeDescriptor since it is unlikely to have the // correct schema at design time. if (!typeof(ICustomTypeDescriptor).IsAssignableFrom(rowType)) { PropertyDescriptorCollection rowProperties = TypeDescriptor.GetProperties(rowType); foreach (PropertyDescriptor rowProperty in rowProperties) { fields.Add(new TypeFieldSchema(rowProperty)); } } } return fields.ToArray(); } public IDataSourceViewSchema[] GetChildren() { return null; } /// /// Derived classes must implement this method to retrieve the row /// type for a given object types. For example, in a strongly typed /// DataTable the row type would be the strongly typed DataRow. /// protected abstract Type GetRowType(Type objectType); public string Name { get { return _viewName; } } } } // 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
- DomainUpDown.cs
- DataContractSerializer.cs
- FormViewUpdatedEventArgs.cs
- DesignerHelpers.cs
- Timer.cs
- HTTPNotFoundHandler.cs
- MatrixTransform3D.cs
- Int64Animation.cs
- RowCache.cs
- ObjectDataSourceMethodEventArgs.cs
- NamespaceCollection.cs
- NotConverter.cs
- HtmlInputControl.cs
- Bidi.cs
- LocalValueEnumerator.cs
- XPathDocument.cs
- BitmapEffectGroup.cs
- ExpressionEditorSheet.cs
- PermissionAttributes.cs
- Registry.cs
- BindingMemberInfo.cs
- SmiRecordBuffer.cs
- LinqDataView.cs
- SymLanguageType.cs
- CodeTypeMemberCollection.cs
- TimelineGroup.cs
- ButtonFlatAdapter.cs
- _HTTPDateParse.cs
- TemplatePartAttribute.cs
- LicenseManager.cs
- MultipleViewProviderWrapper.cs
- WindowsHyperlink.cs
- XmlDataDocument.cs
- WebDescriptionAttribute.cs
- PeerEndPoint.cs
- Container.cs
- ConfigXmlElement.cs
- SymLanguageVendor.cs
- PublisherMembershipCondition.cs
- VBIdentifierName.cs
- DataServiceQueryException.cs
- HttpFileCollection.cs
- BulletChrome.cs
- MultiViewDesigner.cs
- UTF32Encoding.cs
- WebPartCatalogCloseVerb.cs
- SimpleMailWebEventProvider.cs
- ComplexPropertyEntry.cs
- NTAccount.cs
- UnsafeNativeMethods.cs
- Point3DKeyFrameCollection.cs
- Helper.cs
- SoapCodeExporter.cs
- ToolStripSplitButton.cs
- HttpDictionary.cs
- SecureUICommand.cs
- EventWaitHandleSecurity.cs
- AbandonedMutexException.cs
- EpmTargetTree.cs
- UncommonField.cs
- ImportedPolicyConversionContext.cs
- DataGrid.cs
- GridViewDeletedEventArgs.cs
- UncommonField.cs
- MetabaseServerConfig.cs
- Calendar.cs
- ExceptionUtil.cs
- Point3DCollection.cs
- FamilyCollection.cs
- HttpResponseInternalWrapper.cs
- FieldAccessException.cs
- PtsContext.cs
- CachedFontFace.cs
- UnaryExpressionHelper.cs
- EntityModelSchemaGenerator.cs
- RectIndependentAnimationStorage.cs
- DataGridViewIntLinkedList.cs
- ElementHost.cs
- DesignTimeParseData.cs
- QilScopedVisitor.cs
- CommonXSendMessage.cs
- ReversePositionQuery.cs
- BuildProviderCollection.cs
- DescriptionAttribute.cs
- ErrorWrapper.cs
- UrlMappingsModule.cs
- ContentFileHelper.cs
- EntityDescriptor.cs
- SimpleExpression.cs
- HttpRawResponse.cs
- CodeAccessPermission.cs
- StylusPointPropertyId.cs
- ProviderSettings.cs
- GrabHandleGlyph.cs
- TransportChannelFactory.cs
- AssemblyAssociatedContentFileAttribute.cs
- FixedSOMTableCell.cs
- AxDesigner.cs
- ItemDragEvent.cs
- XMLSyntaxException.cs