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
- EpmTargetTree.cs
- ValidationError.cs
- EdmItemError.cs
- basevalidator.cs
- XmlAttributeCache.cs
- BaseDataList.cs
- DesignerSerializerAttribute.cs
- RequestTimeoutManager.cs
- ObjectMaterializedEventArgs.cs
- LabelLiteral.cs
- ForEachAction.cs
- BoolLiteral.cs
- HttpRequestBase.cs
- TaiwanLunisolarCalendar.cs
- EntityTypeEmitter.cs
- SiteMap.cs
- DocumentStatusResources.cs
- ButtonRenderer.cs
- TaskDesigner.cs
- FilterableAttribute.cs
- DesignerCategoryAttribute.cs
- ManagedIStream.cs
- BaseDataListComponentEditor.cs
- DescriptionAttribute.cs
- SettingsProperty.cs
- ObjectDataSourceDisposingEventArgs.cs
- SynthesizerStateChangedEventArgs.cs
- XamlPointCollectionSerializer.cs
- TextEncodedRawTextWriter.cs
- Transform.cs
- FormParameter.cs
- XPathParser.cs
- DbMetaDataFactory.cs
- Rule.cs
- HelpProvider.cs
- Menu.cs
- XmlLanguageConverter.cs
- BinaryConverter.cs
- _WebProxyDataBuilder.cs
- VisualTreeHelper.cs
- TdsParserSafeHandles.cs
- DesignerDataSchemaClass.cs
- TextTrailingCharacterEllipsis.cs
- PageRequestManager.cs
- ReliableRequestSessionChannel.cs
- WebPermission.cs
- Classification.cs
- EFDataModelProvider.cs
- NativeCompoundFileAPIs.cs
- ProtocolsConfigurationHandler.cs
- LinqToSqlWrapper.cs
- WebPartTracker.cs
- WindowsPrincipal.cs
- MetaChildrenColumn.cs
- DirectoryObjectSecurity.cs
- DataGridRowHeaderAutomationPeer.cs
- EventlogProvider.cs
- MobileTextWriter.cs
- FixedSOMImage.cs
- ScriptHandlerFactory.cs
- NewArray.cs
- ConfigurationSection.cs
- EntityDataSourceStatementEditor.cs
- SpnEndpointIdentity.cs
- MaskedTextBox.cs
- PropertyIDSet.cs
- XmlNamespaceMappingCollection.cs
- ActivityTrace.cs
- AutomationAttributeInfo.cs
- SqlXml.cs
- SqlErrorCollection.cs
- EventProviderTraceListener.cs
- UIAgentInitializationException.cs
- DependencyObjectValidator.cs
- RegexMatch.cs
- Vector3DValueSerializer.cs
- BuildDependencySet.cs
- SimpleTableProvider.cs
- DataMisalignedException.cs
- EdmComplexTypeAttribute.cs
- EntityStoreSchemaFilterEntry.cs
- TabControl.cs
- Completion.cs
- SelectionEditor.cs
- TextTreeTextNode.cs
- ObjectDataSourceStatusEventArgs.cs
- WebExceptionStatus.cs
- Transform.cs
- CachedRequestParams.cs
- PeerCollaboration.cs
- HttpListenerResponse.cs
- SettingsPropertyNotFoundException.cs
- ObjectIDGenerator.cs
- PrintDialog.cs
- LayoutSettings.cs
- Maps.cs
- CompilerWrapper.cs
- HttpResponse.cs
- SimpleTypeResolver.cs
- DataGridViewCellStyleChangedEventArgs.cs