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
- TopClause.cs
- VectorKeyFrameCollection.cs
- prompt.cs
- DataControlField.cs
- VariableQuery.cs
- TargetControlTypeAttribute.cs
- MutexSecurity.cs
- DataViewManagerListItemTypeDescriptor.cs
- BufferBuilder.cs
- TemplatePagerField.cs
- ManagementOptions.cs
- ErrorRuntimeConfig.cs
- DataServiceHost.cs
- MDIClient.cs
- MasterPage.cs
- TableTextElementCollectionInternal.cs
- ValueUtilsSmi.cs
- DataControlReferenceCollection.cs
- FileSystemWatcher.cs
- ValidatorCompatibilityHelper.cs
- CodeComment.cs
- FormParameter.cs
- _StreamFramer.cs
- FormViewDeleteEventArgs.cs
- SecurityDescriptor.cs
- Sentence.cs
- TypeExtensionSerializer.cs
- MultiDataTrigger.cs
- CharacterMetrics.cs
- ArrayExtension.cs
- NavigationHelper.cs
- SelectedPathEditor.cs
- WebServiceParameterData.cs
- DrawingBrush.cs
- WorkflowTransactionService.cs
- LinqDataSourceEditData.cs
- EntryWrittenEventArgs.cs
- AncillaryOps.cs
- cookie.cs
- DataKey.cs
- TextEndOfLine.cs
- SoapReflectionImporter.cs
- SkinBuilder.cs
- BuildManager.cs
- ContextMenuStripGroupCollection.cs
- ResourceCategoryAttribute.cs
- ConsumerConnectionPointCollection.cs
- FilteredAttributeCollection.cs
- D3DImage.cs
- LinkedResourceCollection.cs
- SystemWebExtensionsSectionGroup.cs
- updateconfighost.cs
- IpcManager.cs
- Base64Encoding.cs
- WebBrowserNavigatingEventHandler.cs
- BindStream.cs
- RoutedEventValueSerializer.cs
- TreeChangeInfo.cs
- PeerTransportElement.cs
- ContractMapping.cs
- EntityAdapter.cs
- XmlComplianceUtil.cs
- Validator.cs
- TableLayoutStyleCollection.cs
- InstanceCompleteException.cs
- Int32Rect.cs
- SerializableAttribute.cs
- MergeFilterQuery.cs
- GridView.cs
- EntityFrameworkVersions.cs
- DivideByZeroException.cs
- RuntimeIdentifierPropertyAttribute.cs
- ActivityValidationServices.cs
- DatatypeImplementation.cs
- ByteStreamMessage.cs
- ToolStripContentPanelDesigner.cs
- ItemCollection.cs
- IndexOutOfRangeException.cs
- basenumberconverter.cs
- PartitionResolver.cs
- XhtmlTextWriter.cs
- TypographyProperties.cs
- XPathNavigatorException.cs
- ListDataHelper.cs
- OdbcDataAdapter.cs
- DataKey.cs
- AccessorTable.cs
- TextEffectResolver.cs
- InputProcessorProfiles.cs
- ChildTable.cs
- WebPartEditorOkVerb.cs
- RegexCode.cs
- HttpCacheParams.cs
- UIElementAutomationPeer.cs
- MouseWheelEventArgs.cs
- ParenthesizePropertyNameAttribute.cs
- SqlAggregateChecker.cs
- StreamSecurityUpgradeInitiator.cs
- FormViewPagerRow.cs
- MarkupCompiler.cs