Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- OdbcConnectionStringbuilder.cs
- NetPeerTcpBindingElement.cs
- XsltFunctions.cs
- ToolStripProfessionalLowResolutionRenderer.cs
- TextRangeEditLists.cs
- MobileResource.cs
- SspiSafeHandles.cs
- Misc.cs
- DataColumnCollection.cs
- WebBrowsableAttribute.cs
- TransformGroup.cs
- ProtocolsConfigurationHandler.cs
- MediaElementAutomationPeer.cs
- XPathDocumentIterator.cs
- GridViewUpdatedEventArgs.cs
- CompilerParameters.cs
- HttpCookie.cs
- ModifierKeysConverter.cs
- PeerTransportListenAddressConverter.cs
- COSERVERINFO.cs
- HandoffBehavior.cs
- ParentQuery.cs
- WebConvert.cs
- EncodingDataItem.cs
- PlacementWorkspace.cs
- Win32SafeHandles.cs
- RotateTransform.cs
- ConvertEvent.cs
- XmlDomTextWriter.cs
- QuaternionRotation3D.cs
- SoapObjectReader.cs
- DrawTreeNodeEventArgs.cs
- ConcurrentStack.cs
- ManipulationDeltaEventArgs.cs
- PropertyIDSet.cs
- DocComment.cs
- WebRequest.cs
- WeakRefEnumerator.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- FormsAuthenticationCredentials.cs
- _KerberosClient.cs
- DesignerActionList.cs
- EnumType.cs
- RegexNode.cs
- XsltArgumentList.cs
- FontStyles.cs
- JapaneseLunisolarCalendar.cs
- TagPrefixAttribute.cs
- RowsCopiedEventArgs.cs
- OdbcEnvironmentHandle.cs
- _HeaderInfoTable.cs
- WebReferenceCollection.cs
- ScriptingRoleServiceSection.cs
- CopyAttributesAction.cs
- DataGridAddNewRow.cs
- SafeHandles.cs
- UnmanagedHandle.cs
- RepeaterItemEventArgs.cs
- EdmConstants.cs
- InputMethod.cs
- EdgeProfileValidation.cs
- GrammarBuilderPhrase.cs
- ProfilePropertyNameValidator.cs
- DataBindingsDialog.cs
- InvalidDataException.cs
- Rotation3DAnimation.cs
- ChildChangedEventArgs.cs
- EntityTemplateFactory.cs
- SizeAnimationClockResource.cs
- EdmToObjectNamespaceMap.cs
- FormsAuthenticationEventArgs.cs
- LambdaCompiler.Expressions.cs
- XmlSchemaAppInfo.cs
- WebPartHelpVerb.cs
- RuntimeConfigLKG.cs
- FormCollection.cs
- EncodingTable.cs
- XmlNodeChangedEventArgs.cs
- FunctionNode.cs
- cryptoapiTransform.cs
- MbpInfo.cs
- AutomationTextAttribute.cs
- DataGridCellAutomationPeer.cs
- AsyncPostBackErrorEventArgs.cs
- HttpSocketManager.cs
- ReadOnlyHierarchicalDataSource.cs
- SortAction.cs
- BaseParagraph.cs
- WindowInteractionStateTracker.cs
- ObjectItemCollectionAssemblyCacheEntry.cs
- DiscardableAttribute.cs
- SpellerStatusTable.cs
- ResourceWriter.cs
- WebBrowsableAttribute.cs
- Blend.cs
- RegexCharClass.cs
- NullableConverter.cs
- InkSerializer.cs
- FormViewUpdateEventArgs.cs
- XmlSerializerVersionAttribute.cs