Code:
/ FX-1434 / FX-1434 / 1.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
- JobInputBins.cs
- XmlSiteMapProvider.cs
- PathData.cs
- Int16AnimationUsingKeyFrames.cs
- TCPClient.cs
- ConfigurationManagerInternal.cs
- BadImageFormatException.cs
- UICuesEvent.cs
- LinkedResource.cs
- EdmType.cs
- ContentElementAutomationPeer.cs
- PinnedBufferMemoryStream.cs
- RequestValidator.cs
- CustomWebEventKey.cs
- WebPartsSection.cs
- ActiveXContainer.cs
- Material.cs
- CodePageUtils.cs
- ScrollChrome.cs
- CurrentTimeZone.cs
- WorkflowApplicationEventArgs.cs
- StylusButtonCollection.cs
- DataSourceHelper.cs
- TypeInitializationException.cs
- FilteredXmlReader.cs
- KeyedHashAlgorithm.cs
- ConfigurationStrings.cs
- COM2ExtendedBrowsingHandler.cs
- DataGridRow.cs
- HuffModule.cs
- FlowDocumentScrollViewerAutomationPeer.cs
- Clock.cs
- FormViewDeletedEventArgs.cs
- ConnectionsZone.cs
- XPathException.cs
- BitmapEffectInputData.cs
- HtmlInputControl.cs
- DesignerActionKeyboardBehavior.cs
- httpserverutility.cs
- DecoratedNameAttribute.cs
- WebPartHelpVerb.cs
- HtmlEmptyTagControlBuilder.cs
- InsufficientMemoryException.cs
- Predicate.cs
- AutomationElementIdentifiers.cs
- SingleKeyFrameCollection.cs
- StrokeCollectionDefaultValueFactory.cs
- MouseBinding.cs
- WSHttpBindingCollectionElement.cs
- TableRow.cs
- DialogWindow.cs
- Rotation3DAnimationBase.cs
- SmiConnection.cs
- PublisherIdentityPermission.cs
- FunctionImportMapping.ReturnTypeRenameMapping.cs
- UrlPath.cs
- FlowDocumentPage.cs
- MethodAccessException.cs
- SqlParameterCollection.cs
- parserscommon.cs
- ClassHandlersStore.cs
- Permission.cs
- TypefaceMap.cs
- ExeConfigurationFileMap.cs
- DataColumnChangeEvent.cs
- TableCellCollection.cs
- TripleDESCryptoServiceProvider.cs
- FormViewUpdatedEventArgs.cs
- Polyline.cs
- ArraySet.cs
- RuntimeHelpers.cs
- CodeDelegateInvokeExpression.cs
- HwndAppCommandInputProvider.cs
- CapabilitiesAssignment.cs
- MarkupObject.cs
- WorkflowElementDialog.cs
- WebPartManagerDesigner.cs
- RegularExpressionValidator.cs
- ManipulationCompletedEventArgs.cs
- DetailsViewRowCollection.cs
- WaitHandle.cs
- TypeConverterAttribute.cs
- IndentTextWriter.cs
- EncodedStreamFactory.cs
- ReadOnlyTernaryTree.cs
- DateTimeValueSerializerContext.cs
- BridgeDataRecord.cs
- QueryAccessibilityHelpEvent.cs
- SharedStatics.cs
- RadialGradientBrush.cs
- HttpProfileBase.cs
- SingleConverter.cs
- BamlBinaryReader.cs
- ClientTargetCollection.cs
- EntityConnectionStringBuilderItem.cs
- DataBindingList.cs
- AutomationPatternInfo.cs
- XmlTextAttribute.cs
- Msmq4PoisonHandler.cs
- HandlerBase.cs