Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / WebParts / WebPartUtil.cs / 1305376 / WebPartUtil.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls.WebParts { using System; using System.Diagnostics; using System.Reflection; using System.Web.Compilation; internal static class WebPartUtil { // Called from WebPartManagerInternals and ConnectionsZone. internal static object CreateObjectFromType(Type type) { return HttpRuntime.FastCreatePublicInstance(type); } // We use BuildManager.GetType() instead of Type.GetType() so we can load types from the // Code directory, even if no assembly is specified. internal static Type DeserializeType(string typeName, bool throwOnError) { return BuildManager.GetType(typeName, throwOnError); } internal static Type[] GetTypesForConstructor(ConstructorInfo constructor) { Debug.Assert(constructor != null); ParameterInfo[] parameters = constructor.GetParameters(); Type[] types = new Type[parameters.Length]; for (int i = 0; i < parameters.Length; i++) { types[i] = parameters[i].ParameterType; } return types; } internal static bool IsConnectionPointTypeValid(Type connectionPointType, bool isConsumer) { if (connectionPointType == null) { return true; } if (!(connectionPointType.IsPublic || connectionPointType.IsNestedPublic)) { return false; } Type baseType = isConsumer ? typeof(ConsumerConnectionPoint) : typeof(ProviderConnectionPoint); if (!connectionPointType.IsSubclassOf(baseType)) { return false; } Type[] constructorTypes = isConsumer ? ConsumerConnectionPoint.ConstructorTypes : ProviderConnectionPoint.ConstructorTypes; ConstructorInfo constructor = connectionPointType.GetConstructor(constructorTypes); if (constructor == null) { return false; } return true; } // This helper method used to be needed to resolve types in the Code directory. Since this // was fixed in VSWhidbey 380793, we can just use Type.AssemblyQualifiedName instead of // Type.FullName. However, I am leaving this helper method in place in case we need to make // another fix in the future. internal static string SerializeType(Type type) { if (type.Assembly.GlobalAssemblyCache) { return type.AssemblyQualifiedName; } else { return type.FullName; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls.WebParts { using System; using System.Diagnostics; using System.Reflection; using System.Web.Compilation; internal static class WebPartUtil { // Called from WebPartManagerInternals and ConnectionsZone. internal static object CreateObjectFromType(Type type) { return HttpRuntime.FastCreatePublicInstance(type); } // We use BuildManager.GetType() instead of Type.GetType() so we can load types from the // Code directory, even if no assembly is specified. internal static Type DeserializeType(string typeName, bool throwOnError) { return BuildManager.GetType(typeName, throwOnError); } internal static Type[] GetTypesForConstructor(ConstructorInfo constructor) { Debug.Assert(constructor != null); ParameterInfo[] parameters = constructor.GetParameters(); Type[] types = new Type[parameters.Length]; for (int i = 0; i < parameters.Length; i++) { types[i] = parameters[i].ParameterType; } return types; } internal static bool IsConnectionPointTypeValid(Type connectionPointType, bool isConsumer) { if (connectionPointType == null) { return true; } if (!(connectionPointType.IsPublic || connectionPointType.IsNestedPublic)) { return false; } Type baseType = isConsumer ? typeof(ConsumerConnectionPoint) : typeof(ProviderConnectionPoint); if (!connectionPointType.IsSubclassOf(baseType)) { return false; } Type[] constructorTypes = isConsumer ? ConsumerConnectionPoint.ConstructorTypes : ProviderConnectionPoint.ConstructorTypes; ConstructorInfo constructor = connectionPointType.GetConstructor(constructorTypes); if (constructor == null) { return false; } return true; } // This helper method used to be needed to resolve types in the Code directory. Since this // was fixed in VSWhidbey 380793, we can just use Type.AssemblyQualifiedName instead of // Type.FullName. However, I am leaving this helper method in place in case we need to make // another fix in the future. internal static string SerializeType(Type type) { if (type.Assembly.GlobalAssemblyCache) { return type.AssemblyQualifiedName; } else { return type.FullName; } } } } // 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
- TextLineResult.cs
- ExclusiveHandleList.cs
- SHA256.cs
- RegexStringValidator.cs
- TraceFilter.cs
- ContentTypeSettingClientMessageFormatter.cs
- ModelItemKeyValuePair.cs
- Light.cs
- ListBoxItemAutomationPeer.cs
- MobileDeviceCapabilitiesSectionHandler.cs
- PageMediaType.cs
- fixedPageContentExtractor.cs
- ArraySet.cs
- Storyboard.cs
- ScrollItemPatternIdentifiers.cs
- Internal.cs
- DataObject.cs
- WindowsTab.cs
- StagingAreaInputItem.cs
- EndpointDiscoveryElement.cs
- PassportPrincipal.cs
- TemplateControlBuildProvider.cs
- State.cs
- TypeConverterMarkupExtension.cs
- EventData.cs
- Matrix.cs
- HttpProcessUtility.cs
- TextElement.cs
- WebPartActionVerb.cs
- StringReader.cs
- DataGridViewIntLinkedList.cs
- RepeaterItemCollection.cs
- UdpChannelListener.cs
- MasterPageBuildProvider.cs
- SafeThemeHandle.cs
- NumericUpDown.cs
- ServiceModelEnumValidator.cs
- ObjectDataSourceMethodEventArgs.cs
- XmlDesigner.cs
- StringFreezingAttribute.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- SqlCacheDependency.cs
- DuplicateWaitObjectException.cs
- PublishLicense.cs
- ExpressionNormalizer.cs
- XmlValueConverter.cs
- sitestring.cs
- PublisherMembershipCondition.cs
- XmlUtil.cs
- PassportAuthenticationEventArgs.cs
- MDIWindowDialog.cs
- mda.cs
- EnumValAlphaComparer.cs
- CleanUpVirtualizedItemEventArgs.cs
- ResourceDisplayNameAttribute.cs
- ExpressionBuilderContext.cs
- ByteStorage.cs
- VectorCollectionValueSerializer.cs
- RayMeshGeometry3DHitTestResult.cs
- GlobalizationAssembly.cs
- SizeConverter.cs
- PropertyGrid.cs
- DecoderFallbackWithFailureFlag.cs
- ListView.cs
- HtmlElementCollection.cs
- EnumDataContract.cs
- EntityUtil.cs
- SqlDataSourceFilteringEventArgs.cs
- AssemblyBuilder.cs
- FrameworkElementFactory.cs
- ErrorView.xaml.cs
- querybuilder.cs
- SmiMetaData.cs
- XmlSchemaElement.cs
- TreeSet.cs
- ScalarType.cs
- Encoding.cs
- SchemaImporter.cs
- ObjectItemAttributeAssemblyLoader.cs
- StructuredTypeInfo.cs
- XmlMtomWriter.cs
- BindingMemberInfo.cs
- XPathDescendantIterator.cs
- CapabilitiesUse.cs
- SQLBytesStorage.cs
- WebRequestModuleElementCollection.cs
- XmlReflectionMember.cs
- TextAnchor.cs
- EntityUtil.cs
- AsyncOperation.cs
- TextBoxRenderer.cs
- BorderGapMaskConverter.cs
- ControlPaint.cs
- SchemaEntity.cs
- ReflectionUtil.cs
- _NtlmClient.cs
- HttpException.cs
- TargetControlTypeAttribute.cs
- ReadWriteObjectLock.cs
- Lazy.cs