Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / clr / src / BCL / System / Reflection / __Filters.cs / 1 / __Filters.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== //////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////// // // This class defines the delegate methods for the COM+ implemented filters. // This is the reflection version of these. There is also a _Filters class in // runtime which is related to this. // // // // namespace System.Reflection { using System; using System.Globalization; //< [Serializable()] internal class __Filters { // FilterTypeName // This method will filter the class based upon the name. It supports // a trailing wild card. public virtual bool FilterTypeName(Type cls,Object filterCriteria) { // Check that the criteria object is a String object if (filterCriteria == null || !(filterCriteria is String)) throw new InvalidFilterCriteriaException(System.Environment.GetResourceString("RFLCT.FltCritString")); String str = (String) filterCriteria; //str = str.Trim(); // Check to see if this is a prefix or exact match requirement if (str.Length > 0 && str[str.Length - 1] == '*') { str = str.Substring(0, str.Length - 1); return cls.Name.StartsWith(str, StringComparison.Ordinal); } return cls.Name.Equals(str); } // FilterFieldNameIgnoreCase // This method filter the Type based upon name, it ignores case. public virtual bool FilterTypeNameIgnoreCase(Type cls, Object filterCriteria) { // Check that the criteria object is a String object if(filterCriteria == null || !(filterCriteria is String)) throw new InvalidFilterCriteriaException(System.Environment.GetResourceString("RFLCT.FltCritString")); String str = (String) filterCriteria; //str = str.Trim(); // Check to see if this is a prefix or exact match requirement if (str.Length > 0 && str[str.Length - 1] == '*') { str = str.Substring(0, str.Length - 1); String name = cls.Name; if (name.Length >= str.Length) return (String.Compare(name,0,str,0,str.Length,StringComparison.OrdinalIgnoreCase)==0); else return false; } return (String.Compare(str,cls.Name, StringComparison.OrdinalIgnoreCase) == 0); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== //////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////// // // This class defines the delegate methods for the COM+ implemented filters. // This is the reflection version of these. There is also a _Filters class in // runtime which is related to this. // // // // namespace System.Reflection { using System; using System.Globalization; //< [Serializable()] internal class __Filters { // FilterTypeName // This method will filter the class based upon the name. It supports // a trailing wild card. public virtual bool FilterTypeName(Type cls,Object filterCriteria) { // Check that the criteria object is a String object if (filterCriteria == null || !(filterCriteria is String)) throw new InvalidFilterCriteriaException(System.Environment.GetResourceString("RFLCT.FltCritString")); String str = (String) filterCriteria; //str = str.Trim(); // Check to see if this is a prefix or exact match requirement if (str.Length > 0 && str[str.Length - 1] == '*') { str = str.Substring(0, str.Length - 1); return cls.Name.StartsWith(str, StringComparison.Ordinal); } return cls.Name.Equals(str); } // FilterFieldNameIgnoreCase // This method filter the Type based upon name, it ignores case. public virtual bool FilterTypeNameIgnoreCase(Type cls, Object filterCriteria) { // Check that the criteria object is a String object if(filterCriteria == null || !(filterCriteria is String)) throw new InvalidFilterCriteriaException(System.Environment.GetResourceString("RFLCT.FltCritString")); String str = (String) filterCriteria; //str = str.Trim(); // Check to see if this is a prefix or exact match requirement if (str.Length > 0 && str[str.Length - 1] == '*') { str = str.Substring(0, str.Length - 1); String name = cls.Name; if (name.Length >= str.Length) return (String.Compare(name,0,str,0,str.Length,StringComparison.OrdinalIgnoreCase)==0); else return false; } return (String.Compare(str,cls.Name, StringComparison.OrdinalIgnoreCase) == 0); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CellQuery.cs
- ProjectedSlot.cs
- FilterQueryOptionExpression.cs
- SymbolEqualComparer.cs
- ReadOnlyAttribute.cs
- WorkItem.cs
- BindingSource.cs
- columnmapkeybuilder.cs
- Typography.cs
- StrongNameIdentityPermission.cs
- PropertyPathWorker.cs
- RecordsAffectedEventArgs.cs
- CacheRequest.cs
- ReadOnlyHierarchicalDataSourceView.cs
- Automation.cs
- OracleRowUpdatingEventArgs.cs
- RegexParser.cs
- GridView.cs
- TreeBuilder.cs
- ReadOnlyDataSource.cs
- Helper.cs
- QilCloneVisitor.cs
- SrgsElementList.cs
- Graphics.cs
- DbTransaction.cs
- TemplateBindingExpression.cs
- VerificationException.cs
- SecurityIdentifierElementCollection.cs
- EdmToObjectNamespaceMap.cs
- DBNull.cs
- EntityDataSourceViewSchema.cs
- PowerModeChangedEventArgs.cs
- XmlSchemaSimpleContentRestriction.cs
- RequiredFieldValidator.cs
- Facet.cs
- ClientTarget.cs
- SqlProcedureAttribute.cs
- ThreadStaticAttribute.cs
- EntryPointNotFoundException.cs
- EntitySetBase.cs
- ProxyFragment.cs
- WmfPlaceableFileHeader.cs
- MemoryFailPoint.cs
- SystemShuttingDownException.cs
- StylusPointPropertyId.cs
- ParseNumbers.cs
- OSFeature.cs
- MessageSecurityProtocolFactory.cs
- EventManager.cs
- ConfigXmlCDataSection.cs
- CRYPTPROTECT_PROMPTSTRUCT.cs
- SqlDependencyListener.cs
- ConnectionPointGlyph.cs
- AnimationClockResource.cs
- TypeDescriptor.cs
- CaseExpr.cs
- FontDriver.cs
- SendMessageRecord.cs
- FixedTextView.cs
- Privilege.cs
- Matrix3DValueSerializer.cs
- OleDbRowUpdatedEvent.cs
- SamlAction.cs
- QueryOperator.cs
- MatrixAnimationBase.cs
- RadioButtonStandardAdapter.cs
- DataGridViewCellStyle.cs
- NavigationEventArgs.cs
- NotifyInputEventArgs.cs
- WriteTimeStream.cs
- DefaultClaimSet.cs
- ServiceMetadataBehavior.cs
- ToolStripSeparatorRenderEventArgs.cs
- ObjectNotFoundException.cs
- X509ChainElement.cs
- XmlUrlResolver.cs
- ForEachDesigner.xaml.cs
- DetailsViewInsertedEventArgs.cs
- ControlDesigner.cs
- FlowPanelDesigner.cs
- TagMapInfo.cs
- InkCollectionBehavior.cs
- XmlQualifiedName.cs
- ParseNumbers.cs
- ContainerAction.cs
- NavigatingCancelEventArgs.cs
- MailHeaderInfo.cs
- AccessDataSourceWizardForm.cs
- ConnectionManager.cs
- PersonalizableTypeEntry.cs
- SynchronizedInputAdaptor.cs
- DataControlPagerLinkButton.cs
- RemoveStoryboard.cs
- DBConcurrencyException.cs
- ObjectQuery_EntitySqlExtensions.cs
- Html32TextWriter.cs
- SecurityContextSecurityToken.cs
- EventSource.cs
- MouseDevice.cs
- ChineseLunisolarCalendar.cs