Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / UI / WebParts / WebPartUtil.cs / 1 / 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; } } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ExpandCollapsePattern.cs
- DLinqAssociationProvider.cs
- SelectingProviderEventArgs.cs
- _OSSOCK.cs
- ToolboxComponentsCreatedEventArgs.cs
- __TransparentProxy.cs
- CodeComment.cs
- dbdatarecord.cs
- DataGridViewTextBoxColumn.cs
- ObjectManager.cs
- PathGradientBrush.cs
- Polygon.cs
- WindowsListViewGroup.cs
- TableAdapterManagerMethodGenerator.cs
- CookieProtection.cs
- BaseDataBoundControl.cs
- ConfigPathUtility.cs
- TargetParameterCountException.cs
- DataSourceCollectionBase.cs
- DoubleAnimationBase.cs
- CopyAttributesAction.cs
- LassoHelper.cs
- NavigationPropertyAccessor.cs
- Rect.cs
- InputEventArgs.cs
- SafeNativeMethods.cs
- CheckBoxField.cs
- XmlSchemaValidator.cs
- FormViewCommandEventArgs.cs
- StreamWithDictionary.cs
- TabControlCancelEvent.cs
- ValidatedControlConverter.cs
- TextDecorationLocationValidation.cs
- MasterPageCodeDomTreeGenerator.cs
- InputEventArgs.cs
- UInt16Storage.cs
- NativeMethods.cs
- GroupBox.cs
- ConstraintEnumerator.cs
- CompilerParameters.cs
- SqlNamer.cs
- MulticastDelegate.cs
- String.cs
- CollaborationHelperFunctions.cs
- DropTarget.cs
- KnownTypesProvider.cs
- DbConnectionPoolCounters.cs
- Int16KeyFrameCollection.cs
- MailDefinition.cs
- ListDictionaryInternal.cs
- TextDocumentView.cs
- QueryAsyncResult.cs
- ClientBuildManagerCallback.cs
- ContextMenuAutomationPeer.cs
- TableItemStyle.cs
- SecurityAttributeGenerationHelper.cs
- DiagnosticStrings.cs
- ProcessModule.cs
- Pkcs9Attribute.cs
- CodeDOMUtility.cs
- DependencyPropertyDescriptor.cs
- ObjectQueryState.cs
- Variant.cs
- RefreshEventArgs.cs
- EntityTypeBase.cs
- CounterSampleCalculator.cs
- Effect.cs
- XmlCustomFormatter.cs
- PkcsMisc.cs
- ListViewGroupConverter.cs
- xml.cs
- HashCryptoHandle.cs
- HtmlElementErrorEventArgs.cs
- ServiceInstanceProvider.cs
- Imaging.cs
- UnsafeNativeMethods.cs
- HashHelper.cs
- _FtpDataStream.cs
- MruCache.cs
- ContextBase.cs
- ISFClipboardData.cs
- ProxyAttribute.cs
- JournalEntryListConverter.cs
- CreateUserWizard.cs
- BaseAsyncResult.cs
- Rfc2898DeriveBytes.cs
- ConnectionPoolRegistry.cs
- ZipPackage.cs
- TagMapInfo.cs
- Substitution.cs
- KerberosRequestorSecurityToken.cs
- ReflectPropertyDescriptor.cs
- SystemUnicastIPAddressInformation.cs
- ResourceBinder.cs
- COM2IPerPropertyBrowsingHandler.cs
- InfoCardRequestException.cs
- MissingMethodException.cs
- PostBackOptions.cs
- FlowDocumentView.cs
- Metafile.cs