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
- DtdParser.cs
- WebPartDisplayModeCollection.cs
- TreePrinter.cs
- AnalyzedTree.cs
- SolidColorBrush.cs
- GradientStopCollection.cs
- TreeViewItemAutomationPeer.cs
- Timer.cs
- ILGen.cs
- DataGridItemAutomationPeer.cs
- EntityDataSourceQueryBuilder.cs
- Vector.cs
- Keywords.cs
- DataObjectFieldAttribute.cs
- ExpressionEditor.cs
- ChangeToolStripParentVerb.cs
- GregorianCalendarHelper.cs
- IxmlLineInfo.cs
- ThrowHelper.cs
- RegistrationProxy.cs
- RuleSetDialog.cs
- DesignerAutoFormat.cs
- PathSegment.cs
- GradientStopCollection.cs
- columnmapkeybuilder.cs
- ListComponentEditorPage.cs
- MenuEventArgs.cs
- ConstantExpression.cs
- XsltQilFactory.cs
- MdiWindowListStrip.cs
- SQLUtility.cs
- ReadWriteObjectLock.cs
- SoapExtensionTypeElement.cs
- HwndSourceParameters.cs
- DictionarySurrogate.cs
- CookielessData.cs
- JournalEntry.cs
- TextSchema.cs
- ToolStripHighContrastRenderer.cs
- ExpressionBinding.cs
- MimeXmlReflector.cs
- securitycriticaldataformultiplegetandset.cs
- TextBoxView.cs
- log.cs
- EdmItemCollection.cs
- SHA512.cs
- CheckBoxPopupAdapter.cs
- XsdSchemaFileEditor.cs
- SchemaMapping.cs
- TemplateBindingExtensionConverter.cs
- UITypeEditor.cs
- ModelTypeConverter.cs
- ClientCultureInfo.cs
- DesignTimeResourceProviderFactoryAttribute.cs
- SoapHeaders.cs
- XPathMessageFilter.cs
- MultiSelector.cs
- DataGridViewTopLeftHeaderCell.cs
- XmlSchemaAnnotated.cs
- ContractListAdapter.cs
- DataGridViewRowConverter.cs
- PhoneCall.cs
- CacheChildrenQuery.cs
- Rotation3DKeyFrameCollection.cs
- DesignUtil.cs
- ProfileBuildProvider.cs
- DataViewSetting.cs
- SvcMapFileLoader.cs
- Compress.cs
- TemplateNameScope.cs
- TextRangeEditLists.cs
- ObjectDisposedException.cs
- PartialTrustVisibleAssemblyCollection.cs
- ErrorsHelper.cs
- ListParaClient.cs
- XmlReturnWriter.cs
- ProxyWebPartManagerDesigner.cs
- HtmlString.cs
- IntegerValidator.cs
- MultipartContentParser.cs
- Char.cs
- DbProviderFactoriesConfigurationHandler.cs
- CodeGeneratorOptions.cs
- OleServicesContext.cs
- CombinedGeometry.cs
- SelectionWordBreaker.cs
- Root.cs
- DataStreamFromComStream.cs
- Lock.cs
- HttpDigestClientCredential.cs
- UxThemeWrapper.cs
- GridItemProviderWrapper.cs
- ArgumentOutOfRangeException.cs
- CopyNodeSetAction.cs
- BufferAllocator.cs
- UIAgentAsyncParams.cs
- CodeStatement.cs
- VirtualPathExtension.cs
- querybuilder.cs
- HtmlSelect.cs