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
- RankException.cs
- CheckBoxFlatAdapter.cs
- NumericExpr.cs
- SmtpNetworkElement.cs
- HebrewNumber.cs
- NativeMethods.cs
- streamingZipPartStream.cs
- InstanceKeyView.cs
- Metadata.cs
- SelfIssuedAuthProofToken.cs
- WebContext.cs
- Vector.cs
- Point.cs
- TemplateControlCodeDomTreeGenerator.cs
- ObjectQueryExecutionPlan.cs
- MessageQueueCriteria.cs
- SetStateDesigner.cs
- MultipleViewProviderWrapper.cs
- SamlConditions.cs
- X509Certificate2Collection.cs
- SearchForVirtualItemEventArgs.cs
- InkCollectionBehavior.cs
- TextSelectionHighlightLayer.cs
- LocalBuilder.cs
- ValueProviderWrapper.cs
- MarkupExtensionSerializer.cs
- TextEditorSpelling.cs
- ComNativeDescriptor.cs
- EnvelopeVersion.cs
- SpecularMaterial.cs
- FigureHelper.cs
- SystemEvents.cs
- FrameworkTextComposition.cs
- NavigationService.cs
- SingleAnimationUsingKeyFrames.cs
- ContextMenu.cs
- ThreadExceptionDialog.cs
- XmlSerializerFactory.cs
- WindowHelperService.cs
- SHA256Managed.cs
- EllipseGeometry.cs
- MessageBuffer.cs
- BuildProvider.cs
- SizeChangedEventArgs.cs
- RevocationPoint.cs
- TemplateInstanceAttribute.cs
- UITypeEditor.cs
- SspiSecurityTokenParameters.cs
- CompositionCommandSet.cs
- StorageEndPropertyMapping.cs
- UnsafeNativeMethods.cs
- M3DUtil.cs
- UpdateCommand.cs
- SourceFileBuildProvider.cs
- ConnectorMovedEventArgs.cs
- ScriptReferenceEventArgs.cs
- DocumentViewerBaseAutomationPeer.cs
- TraceHwndHost.cs
- FastEncoder.cs
- WebControl.cs
- SystemThemeKey.cs
- AmbientLight.cs
- MsmqReceiveParameters.cs
- OleDbConnectionFactory.cs
- Style.cs
- CustomAttributeFormatException.cs
- KeysConverter.cs
- TileBrush.cs
- WebHttpBindingCollectionElement.cs
- X509CertificateCollection.cs
- XmlLoader.cs
- PasswordBox.cs
- ListViewItemSelectionChangedEvent.cs
- MouseActionValueSerializer.cs
- UseAttributeSetsAction.cs
- CompatibleIComparer.cs
- SqlInternalConnection.cs
- AssemblyFilter.cs
- BaseDataListActionList.cs
- SynchronizedInputProviderWrapper.cs
- HtmlSelect.cs
- CryptoProvider.cs
- SystemResourceHost.cs
- CompilerGeneratedAttribute.cs
- FontFamilyIdentifier.cs
- SqlConnectionManager.cs
- WhitespaceRuleLookup.cs
- View.cs
- CatalogZone.cs
- SortableBindingList.cs
- Rss20FeedFormatter.cs
- ProcessRequestArgs.cs
- SerializationEventsCache.cs
- CommonObjectSecurity.cs
- ExceptionValidationRule.cs
- NonBatchDirectoryCompiler.cs
- HashCodeCombiner.cs
- HostSecurityManager.cs
- MediaElement.cs
- FrameworkRichTextComposition.cs