Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / clr / src / BCL / System / Reflection / __Filters.cs / 1305376 / __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
- PixelFormatConverter.cs
- _FtpDataStream.cs
- BulletedList.cs
- PipeException.cs
- UpdateInfo.cs
- SolidColorBrush.cs
- FakeModelPropertyImpl.cs
- SortedSet.cs
- DriveNotFoundException.cs
- FigureHelper.cs
- CommandManager.cs
- UnsafeNativeMethodsTablet.cs
- CodeAttributeDeclaration.cs
- ListItemParagraph.cs
- EFAssociationProvider.cs
- FileUtil.cs
- Int64Converter.cs
- SqlProviderServices.cs
- IPPacketInformation.cs
- DataSet.cs
- OdbcConnection.cs
- TemplatedAdorner.cs
- ControlDesignerState.cs
- DrawingAttributeSerializer.cs
- PropertyTabAttribute.cs
- XmlWriterSettings.cs
- Command.cs
- RunWorkerCompletedEventArgs.cs
- BuildProviderCollection.cs
- StatusStrip.cs
- ConfigPathUtility.cs
- UrlAuthorizationModule.cs
- EncryptedType.cs
- BypassElementCollection.cs
- ByteConverter.cs
- IntSecurity.cs
- DesignerImageAdapter.cs
- CultureInfoConverter.cs
- ListControl.cs
- ChildTable.cs
- HybridObjectCache.cs
- LoadRetryHandler.cs
- EventMappingSettingsCollection.cs
- TypeInfo.cs
- DeflateStreamAsyncResult.cs
- ServiceModelConfigurationSectionCollection.cs
- DesignSurfaceManager.cs
- _SslState.cs
- ServiceOperationInvoker.cs
- DispatcherSynchronizationContext.cs
- DefaultTypeArgumentAttribute.cs
- XmlAutoDetectWriter.cs
- ListViewGroupCollectionEditor.cs
- XmlDataSourceNodeDescriptor.cs
- ArcSegment.cs
- Encoding.cs
- XmlCharType.cs
- ColumnResizeUndoUnit.cs
- SpinWait.cs
- ObjectKeyFrameCollection.cs
- RegexRunner.cs
- ExpandSegmentCollection.cs
- SqlLiftWhereClauses.cs
- RichTextBoxConstants.cs
- QueryTaskGroupState.cs
- TextEmbeddedObject.cs
- CorrelationManager.cs
- MediaPlayer.cs
- BasicDesignerLoader.cs
- RepeaterItem.cs
- TreeNodeStyle.cs
- Hash.cs
- MemoryMappedView.cs
- StyleXamlParser.cs
- SafeNativeMethods.cs
- CommandExpr.cs
- KeyGestureConverter.cs
- CodeSubDirectoriesCollection.cs
- DataGridViewTopLeftHeaderCell.cs
- ComboBoxItem.cs
- LicenseManager.cs
- AlgoModule.cs
- GrammarBuilderWildcard.cs
- SqlStream.cs
- SafeEventLogReadHandle.cs
- WebPartManager.cs
- ThreadAttributes.cs
- SqlBulkCopyColumnMapping.cs
- EndOfStreamException.cs
- TypeConverterMarkupExtension.cs
- ReferencedType.cs
- Line.cs
- SafeRightsManagementQueryHandle.cs
- Scene3D.cs
- ObjectConverter.cs
- TemplatePartAttribute.cs
- IRCollection.cs
- CodeTryCatchFinallyStatement.cs
- TemplateBindingExtension.cs
- PermissionToken.cs