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
- IDReferencePropertyAttribute.cs
- SqlError.cs
- ConnectionStringsExpressionBuilder.cs
- StorageEntityContainerMapping.cs
- AppDomainCompilerProxy.cs
- ConnectivityStatus.cs
- FacetChecker.cs
- WindowsPrincipal.cs
- MdiWindowListItemConverter.cs
- ServiceHostFactory.cs
- DataGridViewRowPrePaintEventArgs.cs
- AppSettingsSection.cs
- MapPathBasedVirtualPathProvider.cs
- XmlSchemaDatatype.cs
- SessionEndedEventArgs.cs
- XamlTemplateSerializer.cs
- X509ChainElement.cs
- ResourceWriter.cs
- DescendantBaseQuery.cs
- IconEditor.cs
- PerformanceCounterPermissionAttribute.cs
- AttributeCollection.cs
- CloudCollection.cs
- ExtensionDataReader.cs
- NameSpaceEvent.cs
- DecimalConstantAttribute.cs
- SemanticBasicElement.cs
- DispatcherProcessingDisabled.cs
- FileDataSource.cs
- ResizeBehavior.cs
- RtfNavigator.cs
- FilterQuery.cs
- PersonalizablePropertyEntry.cs
- Cursors.cs
- GeometryValueSerializer.cs
- QueryCursorEventArgs.cs
- DispatcherEventArgs.cs
- ResXDataNode.cs
- DbReferenceCollection.cs
- ToolStripComboBox.cs
- XmlDataSource.cs
- LogSwitch.cs
- AuthenticationConfig.cs
- Shared.cs
- EventWaitHandle.cs
- HashCodeCombiner.cs
- WorkflowViewElement.cs
- GenericUriParser.cs
- LinqDataView.cs
- FilteredXmlReader.cs
- SettingsContext.cs
- XmlNotation.cs
- arabicshape.cs
- TCPClient.cs
- InternalRelationshipCollection.cs
- ControlBindingsCollection.cs
- TimerElapsedEvenArgs.cs
- OracleCommand.cs
- SQLResource.cs
- CodeDomSerializerBase.cs
- Triplet.cs
- LocalizationComments.cs
- ModuleBuilder.cs
- ZipIOExtraFieldElement.cs
- StrongNamePublicKeyBlob.cs
- WsdlWriter.cs
- CustomValidator.cs
- SelectorItemAutomationPeer.cs
- EllipseGeometry.cs
- ExceptionValidationRule.cs
- Win32.cs
- selecteditemcollection.cs
- ManipulationStartingEventArgs.cs
- OleDbCommand.cs
- PointConverter.cs
- CollectionContainer.cs
- CorruptStoreException.cs
- DoubleLinkList.cs
- ResXBuildProvider.cs
- FormViewActionList.cs
- Group.cs
- StringDictionary.cs
- PartitionResolver.cs
- EnumerableWrapperWeakToStrong.cs
- EncryptedXml.cs
- TextLineResult.cs
- TemplateInstanceAttribute.cs
- RequestCachePolicyConverter.cs
- FileLogRecordEnumerator.cs
- AssemblyBuilder.cs
- ProcessInfo.cs
- NestedContainer.cs
- Parser.cs
- MethodExpr.cs
- MetadataPropertyCollection.cs
- SizeConverter.cs
- xmlfixedPageInfo.cs
- FindRequestContext.cs
- AutomationElement.cs
- WebEventCodes.cs