Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WebForms / System / Web / UI / Design / WebControls / ObjectDesignerDataSourceView.cs / 1 / ObjectDesignerDataSourceView.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.Design.WebControls { using System; using System.Collections; using System.Data; using System.Web.UI.WebControls; ////// ObjectDesignerDataSourceView is the designer view associated with a ObjectDataSourceDesigner. /// [System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand, Flags = System.Security.Permissions.SecurityPermissionFlag.UnmanagedCode)] public class ObjectDesignerDataSourceView : DesignerDataSourceView { private ObjectDataSourceDesigner _owner; public ObjectDesignerDataSourceView(ObjectDataSourceDesigner owner, string viewName) : base(owner, viewName) { _owner = owner; } public override bool CanDelete { get { return (_owner.ObjectDataSource.DeleteMethod.Length > 0); } } public override bool CanInsert { get { return (_owner.ObjectDataSource.InsertMethod.Length > 0); } } public override bool CanPage { get { return _owner.ObjectDataSource.EnablePaging; } } public override bool CanRetrieveTotalRowCount { get { return (_owner.ObjectDataSource.SelectCountMethod.Length > 0); } } public override bool CanSort { get { // We can sort if either the business object can do custom sorting, // or the return type of the select method is one of a few known types. if (_owner.ObjectDataSource.SortParameterName.Length > 0) { return true; } Type selectMethodReturnType = _owner.SelectMethodReturnType; return ((selectMethodReturnType != null) && (typeof(DataSet).IsAssignableFrom(selectMethodReturnType) || typeof(DataTable).IsAssignableFrom(selectMethodReturnType) || typeof(DataView).IsAssignableFrom(selectMethodReturnType))); } } public override bool CanUpdate { get { return (_owner.ObjectDataSource.UpdateMethod.Length > 0); } } public override IDataSourceViewSchema Schema { get { // Extract the serialized data from DesignerState DataTable[] schemaTables = _owner.LoadSchema(); if ((schemaTables != null) && (schemaTables.Length > 0)) { if (Name.Length == 0) { return new DataSetViewSchema(schemaTables[0]); } foreach (DataTable dataTable in schemaTables) { if (String.Equals(dataTable.TableName, Name, StringComparison.OrdinalIgnoreCase)) { return new DataSetViewSchema(dataTable); } } } return null; } } public override IEnumerable GetDesignTimeData(int minimumRows, out bool isSampleData) { isSampleData = true; DataTable[] schemaTables = _owner.LoadSchema(); if ((schemaTables != null) && (schemaTables.Length > 0)) { if (Name.Length == 0) { // View name was not specified, just get the first (default) table and create dummy data return DesignTimeData.GetDesignTimeDataSource(DesignTimeData.CreateSampleDataTable(new DataView(schemaTables[0]), true), minimumRows); } // Try to find the requested table by name (case-insensitive) foreach (DataTable dataTable in schemaTables) { if (String.Equals(dataTable.TableName, Name, StringComparison.OrdinalIgnoreCase)) { // Found the table, create some dummy data return DesignTimeData.GetDesignTimeDataSource(DesignTimeData.CreateSampleDataTable(new DataView(dataTable), true), minimumRows); } } } // Couldn't find design-time schema, use base implementation return base.GetDesignTimeData(minimumRows, out isSampleData); } } } // 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
- BamlLocalizationDictionary.cs
- __ConsoleStream.cs
- SynchronizationValidator.cs
- BaseCodePageEncoding.cs
- IsolationInterop.cs
- CustomError.cs
- HttpProcessUtility.cs
- DbConnectionPoolIdentity.cs
- ToolStripItemClickedEventArgs.cs
- TreeWalkHelper.cs
- ColorContext.cs
- DynamicDataExtensions.cs
- SqlAliaser.cs
- mediaeventshelper.cs
- Exceptions.cs
- ParserStreamGeometryContext.cs
- WpfPayload.cs
- SynchronizationLockException.cs
- Types.cs
- filewebresponse.cs
- InvalidDocumentContentsException.cs
- EarlyBoundInfo.cs
- Vector3dCollection.cs
- COMException.cs
- GeneralTransform3DTo2D.cs
- EntityCommandExecutionException.cs
- CompilerLocalReference.cs
- DocumentPage.cs
- TableLayoutSettings.cs
- Message.cs
- FixedPageAutomationPeer.cs
- SchemaImporterExtension.cs
- TypeBinaryExpression.cs
- Int32RectValueSerializer.cs
- CssTextWriter.cs
- Section.cs
- WorkItem.cs
- Encoder.cs
- InkCanvasFeedbackAdorner.cs
- AdPostCacheSubstitution.cs
- Propagator.JoinPropagator.cs
- CursorConverter.cs
- Token.cs
- ListBase.cs
- NamedPipeConnectionPool.cs
- BuilderPropertyEntry.cs
- LayoutInformation.cs
- PointAnimationUsingKeyFrames.cs
- HtmlImage.cs
- ImageIndexConverter.cs
- URI.cs
- SatelliteContractVersionAttribute.cs
- TransactionScope.cs
- SineEase.cs
- XNodeNavigator.cs
- DocumentApplicationJournalEntry.cs
- IImplicitResourceProvider.cs
- MembershipValidatePasswordEventArgs.cs
- ExplicitDiscriminatorMap.cs
- ColumnHeader.cs
- ControlBindingsCollection.cs
- WebFormDesignerActionService.cs
- RadialGradientBrush.cs
- ChannelAcceptor.cs
- RtfControls.cs
- ObjectStateEntryBaseUpdatableDataRecord.cs
- BinaryMethodMessage.cs
- TargetInvocationException.cs
- ProcessHost.cs
- Material.cs
- StaticExtension.cs
- InputBuffer.cs
- DataSourceSelectArguments.cs
- WindowsGraphicsCacheManager.cs
- AutoSizeToolBoxItem.cs
- MimeBasePart.cs
- EditorReuseAttribute.cs
- embossbitmapeffect.cs
- WasAdminWrapper.cs
- RoleExceptions.cs
- XmlSerializerAssemblyAttribute.cs
- SharedConnectionInfo.cs
- InplaceBitmapMetadataWriter.cs
- DefaultAuthorizationContext.cs
- DataGridViewControlCollection.cs
- MiniConstructorInfo.cs
- TypeUsageBuilder.cs
- DbConnectionHelper.cs
- ExpressionParser.cs
- NetSectionGroup.cs
- CompensatableTransactionScopeActivityDesigner.cs
- TabletCollection.cs
- GridViewRowPresenter.cs
- Message.cs
- DictionaryTraceRecord.cs
- SqlFileStream.cs
- Literal.cs
- QueryCacheEntry.cs
- URLString.cs
- DynamicPropertyReader.cs