Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / DynamicData / DynamicData / DynamicQueryStringParameter.cs / 1305376 / DynamicQueryStringParameter.cs
using System.Collections.Generic; using System.Globalization; using System.Web.DynamicData.Util; using System.Web.Resources; using System.Web.UI; using System.Web.UI.WebControls; namespace System.Web.DynamicData { ////// DynamicQueryStringParameter allows a datasource to have its primary key easily fed from the query string. /// It does not require any attributes, and works even for multi-part primary keys. /// public class DynamicQueryStringParameter : Parameter, IWhereParametersProvider { ////// See IWhereParametersProvider.GetWhereParameters /// public virtual IEnumerableGetWhereParameters(IDynamicDataSource dataSource) { var table = MetaTableHelper.GetTableWithFullFallback(dataSource, HttpContext.Current.ToWrapper()); // check makes no sense as the above call will throw //if (table == null) { // return new Parameter[0]; //} return RouteParametersHelper.GetColumnParameters(table, Name); } /// /// same as base /// /// /// ///protected override object Evaluate(HttpContext context, Control control) { // If this gets called, it means we never had a chance to expand the parameter. Give an error // telling the user to use a DynamicDataManager throw new InvalidOperationException(String.Format( CultureInfo.CurrentCulture, DynamicDataResources.DynamicParameter_NeedExpansion, typeof(DynamicQueryStringParameter).Name)); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System.Collections.Generic; using System.Globalization; using System.Web.DynamicData.Util; using System.Web.Resources; using System.Web.UI; using System.Web.UI.WebControls; namespace System.Web.DynamicData { /// /// DynamicQueryStringParameter allows a datasource to have its primary key easily fed from the query string. /// It does not require any attributes, and works even for multi-part primary keys. /// public class DynamicQueryStringParameter : Parameter, IWhereParametersProvider { ////// See IWhereParametersProvider.GetWhereParameters /// public virtual IEnumerableGetWhereParameters(IDynamicDataSource dataSource) { var table = MetaTableHelper.GetTableWithFullFallback(dataSource, HttpContext.Current.ToWrapper()); // check makes no sense as the above call will throw //if (table == null) { // return new Parameter[0]; //} return RouteParametersHelper.GetColumnParameters(table, Name); } /// /// same as base /// /// /// ///protected override object Evaluate(HttpContext context, Control control) { // If this gets called, it means we never had a chance to expand the parameter. Give an error // telling the user to use a DynamicDataManager throw new InvalidOperationException(String.Format( CultureInfo.CurrentCulture, DynamicDataResources.DynamicParameter_NeedExpansion, typeof(DynamicQueryStringParameter).Name)); } } } // 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
- RTLAwareMessageBox.cs
- SafeTokenHandle.cs
- Soap12FormatExtensions.cs
- AuthenticationModuleElement.cs
- DbMetaDataCollectionNames.cs
- AnnotationComponentManager.cs
- MonthCalendarDesigner.cs
- JsonReader.cs
- SerializationInfoEnumerator.cs
- EventWaitHandle.cs
- TreeView.cs
- _UriTypeConverter.cs
- PreloadedPackages.cs
- IgnoreSection.cs
- Schema.cs
- ToolStripPanelRow.cs
- AssemblyBuilderData.cs
- GridViewPageEventArgs.cs
- LinqDataSourceHelper.cs
- LinkButton.cs
- AttachedPropertyBrowsableForTypeAttribute.cs
- SystemColorTracker.cs
- TextViewSelectionProcessor.cs
- MSAANativeProvider.cs
- ParserOptions.cs
- SynchronousChannel.cs
- SqlClientWrapperSmiStream.cs
- ADConnectionHelper.cs
- TimelineCollection.cs
- ScriptingJsonSerializationSection.cs
- URLIdentityPermission.cs
- _SingleItemRequestCache.cs
- ThumbAutomationPeer.cs
- TreeViewEvent.cs
- ObjectHelper.cs
- COM2ExtendedTypeConverter.cs
- ConfigurationValidatorAttribute.cs
- CodeNamespaceCollection.cs
- HwndAppCommandInputProvider.cs
- unsafenativemethodstextservices.cs
- SizeAnimationClockResource.cs
- ColorContext.cs
- InvalidPrinterException.cs
- XmlSchemaCompilationSettings.cs
- BrowserTree.cs
- RadioButtonAutomationPeer.cs
- RsaKeyIdentifierClause.cs
- WpfWebRequestHelper.cs
- Typeface.cs
- GeneralTransformCollection.cs
- AutomationFocusChangedEventArgs.cs
- OleAutBinder.cs
- XmlValueConverter.cs
- MasterPageCodeDomTreeGenerator.cs
- KeyConverter.cs
- ModelProperty.cs
- Types.cs
- ListViewInsertionMark.cs
- WindowsRegion.cs
- CdpEqualityComparer.cs
- WindowsSpinner.cs
- TextBoxRenderer.cs
- CipherData.cs
- SharedPersonalizationStateInfo.cs
- WebBrowserDesigner.cs
- TypeContext.cs
- shaperfactoryquerycachekey.cs
- Scene3D.cs
- Wizard.cs
- FtpCachePolicyElement.cs
- SoapIgnoreAttribute.cs
- ClientSettingsSection.cs
- Compress.cs
- RemotingSurrogateSelector.cs
- EventRoute.cs
- FontEmbeddingManager.cs
- DocumentGridContextMenu.cs
- AQNBuilder.cs
- DefaultEventAttribute.cs
- XPathChildIterator.cs
- XPathNavigatorKeyComparer.cs
- CompilationRelaxations.cs
- SiteMapDataSourceView.cs
- ImageDrawing.cs
- BuildManagerHost.cs
- GetLedgerRequest.cs
- XmlQueryContext.cs
- ListDictionaryInternal.cs
- InnerItemCollectionView.cs
- RequestResizeEvent.cs
- BuildProviderCollection.cs
- IdentifierService.cs
- BigInt.cs
- XmlElementCollection.cs
- PersonalizationDictionary.cs
- XpsFontSerializationService.cs
- XmlReaderSettings.cs
- CommunicationException.cs
- ApplicationInfo.cs
- ColumnCollectionEditor.cs