Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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; } } } } // 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
- MembershipSection.cs
- TreeViewEvent.cs
- HttpApplication.cs
- SchemaNotation.cs
- DockingAttribute.cs
- IsolatedStorageFile.cs
- TemplateParser.cs
- XPathSelectionIterator.cs
- DrawingAttributesDefaultValueFactory.cs
- EmptyCollection.cs
- SimpleApplicationHost.cs
- DocumentPageViewAutomationPeer.cs
- PresentationAppDomainManager.cs
- HostingPreferredMapPath.cs
- ReliabilityContractAttribute.cs
- RadialGradientBrush.cs
- DoubleKeyFrameCollection.cs
- ReturnType.cs
- Processor.cs
- TextBox.cs
- FormatterServices.cs
- DataGridViewCellStateChangedEventArgs.cs
- ActiveXSite.cs
- SapiInterop.cs
- ECDsaCng.cs
- ListViewHitTestInfo.cs
- TextLineBreak.cs
- StyleReferenceConverter.cs
- UnmanagedMemoryStreamWrapper.cs
- TextElementAutomationPeer.cs
- SqlConnectionStringBuilder.cs
- ValidationPropertyAttribute.cs
- DotExpr.cs
- GeneralTransform3DTo2DTo3D.cs
- TextPointerBase.cs
- SynchronizationLockException.cs
- GeometryValueSerializer.cs
- DataGridViewCellParsingEventArgs.cs
- unsafenativemethodstextservices.cs
- BackgroundWorker.cs
- ServiceActivationException.cs
- FileDialog.cs
- WithStatement.cs
- RegexTree.cs
- ThemeDirectoryCompiler.cs
- PageWrapper.cs
- WebPartUserCapability.cs
- BitmapDecoder.cs
- EnumerableCollectionView.cs
- EdmItemCollection.cs
- UpdateProgress.cs
- Trace.cs
- RemoteHelper.cs
- InternalConfigHost.cs
- ConsoleKeyInfo.cs
- PopupEventArgs.cs
- AesManaged.cs
- Stack.cs
- PrePostDescendentsWalker.cs
- DetailsViewActionList.cs
- ContentFilePart.cs
- ZipIOCentralDirectoryDigitalSignature.cs
- Rules.cs
- TemplateColumn.cs
- InternalPermissions.cs
- VisualTreeHelper.cs
- NullEntityWrapper.cs
- StreamUpgradeInitiator.cs
- UnmanagedMemoryStream.cs
- BitmapFrame.cs
- BamlReader.cs
- PopupControlService.cs
- ImportException.cs
- XPathNodeHelper.cs
- DBCommandBuilder.cs
- CodeArrayIndexerExpression.cs
- TransactionProtocol.cs
- DataGridItemEventArgs.cs
- HtmlFormWrapper.cs
- StoryFragments.cs
- DisplayMemberTemplateSelector.cs
- ExpressionList.cs
- PagerSettings.cs
- ClientOperationFormatterProvider.cs
- InfocardInteractiveChannelInitializer.cs
- WebPartConnectionsCancelVerb.cs
- ContextMenuStripGroupCollection.cs
- SiblingIterators.cs
- EntityDataReader.cs
- MembershipUser.cs
- Base64Stream.cs
- UnsafeNativeMethods.cs
- SyntaxCheck.cs
- DbDataAdapter.cs
- DesignerPerfEventProvider.cs
- CommandField.cs
- BaseDataBoundControl.cs
- EntityWithKeyStrategy.cs
- RegexMatchCollection.cs
- ExtendedPropertyDescriptor.cs