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
- View.cs
- BlurBitmapEffect.cs
- MultiSelectRootGridEntry.cs
- RadioButtonAutomationPeer.cs
- InkSerializer.cs
- FactoryGenerator.cs
- ImmutableClientRuntime.cs
- DataControlImageButton.cs
- Header.cs
- LookupNode.cs
- Win32KeyboardDevice.cs
- XPathParser.cs
- SafeNativeMethods.cs
- ObjectItemAssemblyLoader.cs
- EventProviderClassic.cs
- TypeConverter.cs
- Vertex.cs
- XmlComplianceUtil.cs
- PlainXmlWriter.cs
- XamlContextStack.cs
- SqlConnectionString.cs
- EndpointInfo.cs
- FormViewUpdateEventArgs.cs
- TraceHandler.cs
- MdImport.cs
- TableCellAutomationPeer.cs
- MSHTMLHostUtil.cs
- MDIWindowDialog.cs
- PasswordBox.cs
- DoubleAnimationUsingKeyFrames.cs
- DetailsViewDeleteEventArgs.cs
- WindowsPrincipal.cs
- ViewGenResults.cs
- RemoteWebConfigurationHost.cs
- SelectionPattern.cs
- PeerApplicationLaunchInfo.cs
- StrokeIntersection.cs
- RouteValueDictionary.cs
- DeferrableContent.cs
- DependencyPropertyKind.cs
- DocumentPageViewAutomationPeer.cs
- ForeignKeyConstraint.cs
- SqlCharStream.cs
- XPathNodePointer.cs
- ProvidePropertyAttribute.cs
- DefaultPrintController.cs
- NamespaceDecl.cs
- IdentityNotMappedException.cs
- TextPatternIdentifiers.cs
- XamlNamespaceHelper.cs
- PartialClassGenerationTaskInternal.cs
- TraceHandlerErrorFormatter.cs
- LicenseProviderAttribute.cs
- XmlSchemaNotation.cs
- ColumnResizeUndoUnit.cs
- CompilerCollection.cs
- RepeaterItemEventArgs.cs
- SqlCacheDependency.cs
- XmlSchemaComplexContentRestriction.cs
- xsdvalidator.cs
- Rss20ItemFormatter.cs
- LocalIdKeyIdentifierClause.cs
- _ConnectOverlappedAsyncResult.cs
- DialogResultConverter.cs
- FilteredDataSetHelper.cs
- StringValidatorAttribute.cs
- SortableBindingList.cs
- RijndaelCryptoServiceProvider.cs
- DependencyPropertyValueSerializer.cs
- KnownBoxes.cs
- XmlSchemaSimpleContent.cs
- ResourceManager.cs
- AbandonedMutexException.cs
- BinaryEditor.cs
- InputReportEventArgs.cs
- Pair.cs
- SqlWebEventProvider.cs
- SafeRegistryHandle.cs
- XPathExpr.cs
- DesignTimeTemplateParser.cs
- EventInfo.cs
- SettingsContext.cs
- ContainerUtilities.cs
- TemplateInstanceAttribute.cs
- XsdCachingReader.cs
- ParserStreamGeometryContext.cs
- Win32.cs
- SqlRewriteScalarSubqueries.cs
- CalculatedColumn.cs
- StorageInfo.cs
- SynchronizationFilter.cs
- DataStreams.cs
- TranslateTransform.cs
- AnnouncementEndpointElement.cs
- WebPartUserCapability.cs
- ScriptResourceDefinition.cs
- VerificationAttribute.cs
- IArgumentProvider.cs
- InstanceDataCollectionCollection.cs
- DocumentReferenceCollection.cs