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
- XmlAnyElementAttribute.cs
- FlagsAttribute.cs
- HebrewCalendar.cs
- Border.cs
- XPathNodeList.cs
- SecurityTokenAuthenticator.cs
- CompareInfo.cs
- DeploymentSection.cs
- BamlStream.cs
- FixedNode.cs
- Range.cs
- DataIdProcessor.cs
- MenuAutoFormat.cs
- ToolStripControlHost.cs
- Matrix3D.cs
- MachinePropertyVariants.cs
- CompressEmulationStream.cs
- EntityConnection.cs
- lengthconverter.cs
- WizardStepBase.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- SoapFaultCodes.cs
- ConnectionInterfaceCollection.cs
- Scene3D.cs
- CompileXomlTask.cs
- WebPartUtil.cs
- ExpressionsCollectionConverter.cs
- SoapReflectionImporter.cs
- OleDbStruct.cs
- ISessionStateStore.cs
- ErrorFormatter.cs
- SafeArrayTypeMismatchException.cs
- EventProviderWriter.cs
- NetworkInformationPermission.cs
- DataPager.cs
- WsatConfiguration.cs
- PathData.cs
- PolyQuadraticBezierSegment.cs
- ActivityWithResult.cs
- Matrix.cs
- PrivilegeNotHeldException.cs
- DistributedTransactionPermission.cs
- TextBoxBase.cs
- ErrorReporting.cs
- InProcStateClientManager.cs
- ColorMatrix.cs
- PerformanceCounterManager.cs
- CircleHotSpot.cs
- WorkflowTraceTransfer.cs
- HtmlLink.cs
- Brushes.cs
- SecurityHelper.cs
- VisualStateChangedEventArgs.cs
- DataBindingsDialog.cs
- PathFigure.cs
- WindowAutomationPeer.cs
- WinFormsSecurity.cs
- MemoryStream.cs
- UnionExpr.cs
- CompensatableTransactionScopeActivity.cs
- ParseHttpDate.cs
- RemoteWebConfigurationHostServer.cs
- RelationshipType.cs
- ControlPropertyNameConverter.cs
- BeginStoryboard.cs
- StatusBarDesigner.cs
- DataServices.cs
- CodeSnippetTypeMember.cs
- DelayedRegex.cs
- ValidateNames.cs
- _CommandStream.cs
- ServiceRouteHandler.cs
- DynamicVirtualDiscoSearcher.cs
- UserNameSecurityTokenParameters.cs
- HttpHandlerActionCollection.cs
- TogglePattern.cs
- DataObject.cs
- _Rfc2616CacheValidators.cs
- IntellisenseTextBox.designer.cs
- SqlNodeAnnotations.cs
- SafeCertificateStore.cs
- MulticastIPAddressInformationCollection.cs
- ToolStripContentPanel.cs
- AbsoluteQuery.cs
- HttpCacheParams.cs
- StreamUpdate.cs
- DocumentPage.cs
- Panel.cs
- CharEnumerator.cs
- TextServicesCompartmentEventSink.cs
- XmlAttributeCache.cs
- DiscreteKeyFrames.cs
- WsatStrings.cs
- WebBrowserUriTypeConverter.cs
- NetStream.cs
- TimeSpanStorage.cs
- NetNamedPipeSecurityMode.cs
- ControlType.cs
- VectorAnimationBase.cs
- DeploymentSection.cs