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
- HandlerBase.cs
- RepeaterCommandEventArgs.cs
- SizeKeyFrameCollection.cs
- FrameworkContentElement.cs
- CallbackTimeoutsBehavior.cs
- CheckableControlBaseAdapter.cs
- SecurityPermission.cs
- DataGridViewLinkColumn.cs
- GeometryModel3D.cs
- FileDataSourceCache.cs
- PersonalizationProviderHelper.cs
- EdmSchemaAttribute.cs
- BaseProcessor.cs
- ClassHandlersStore.cs
- NotSupportedException.cs
- WaitHandle.cs
- EnumConverter.cs
- EventManager.cs
- QilChoice.cs
- ZipIOExtraFieldZip64Element.cs
- KeySpline.cs
- RubberbandSelector.cs
- TableItemPattern.cs
- ScriptReference.cs
- RectIndependentAnimationStorage.cs
- PersianCalendar.cs
- AtlasWeb.Designer.cs
- UserValidatedEventArgs.cs
- UpdateException.cs
- SqlDataSource.cs
- CookieProtection.cs
- ResourcePermissionBase.cs
- Stroke.cs
- GenericEnumConverter.cs
- VoiceInfo.cs
- EditingCommands.cs
- VirtualDirectoryMapping.cs
- ReferencedCollectionType.cs
- SrgsRuleRef.cs
- CommandSet.cs
- _HTTPDateParse.cs
- HandlerFactoryWrapper.cs
- XsltException.cs
- ServiceControllerDesigner.cs
- SharedDp.cs
- ObjectStateEntryBaseUpdatableDataRecord.cs
- InputDevice.cs
- LinkUtilities.cs
- TextBox.cs
- XpsS0ValidatingLoader.cs
- DisableDpiAwarenessAttribute.cs
- X509PeerCertificateAuthenticationElement.cs
- LinqDataSourceStatusEventArgs.cs
- TraceListener.cs
- SslStream.cs
- TcpWorkerProcess.cs
- TaskCanceledException.cs
- SqlWebEventProvider.cs
- QuaternionAnimationUsingKeyFrames.cs
- HtmlInputControl.cs
- Fault.cs
- Wildcard.cs
- _Rfc2616CacheValidators.cs
- BinaryKeyIdentifierClause.cs
- SyndicationCategory.cs
- MetadataItemEmitter.cs
- MessageDesigner.cs
- MouseOverProperty.cs
- ResourceProviderFactory.cs
- followingsibling.cs
- NCryptNative.cs
- PolicyImporterElement.cs
- InplaceBitmapMetadataWriter.cs
- WindowClosedEventArgs.cs
- State.cs
- COSERVERINFO.cs
- Win32.cs
- Clock.cs
- IRCollection.cs
- HttpErrorTraceRecord.cs
- PasswordRecovery.cs
- ArglessEventHandlerProxy.cs
- StringUtil.cs
- FormsAuthenticationModule.cs
- StrokeNodeOperations2.cs
- Cursors.cs
- DateTimeConverter.cs
- UdpMessageProperty.cs
- DataSetViewSchema.cs
- DrawTreeNodeEventArgs.cs
- XmlEnumAttribute.cs
- MarkupCompilePass1.cs
- PointLight.cs
- ToolStripItemDesigner.cs
- HtmlInputImage.cs
- StringCollectionEditor.cs
- validationstate.cs
- PermissionSet.cs
- DesignerDataTable.cs
- GatewayDefinition.cs