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
- ContractComponent.cs
- SyndicationSerializer.cs
- TextWriter.cs
- TrackingExtract.cs
- Point.cs
- OAVariantLib.cs
- TextEndOfParagraph.cs
- ExpressionEditorAttribute.cs
- PropertyGeneratedEventArgs.cs
- GAC.cs
- RefExpr.cs
- SchemaCollectionPreprocessor.cs
- HelpExampleGenerator.cs
- EncryptedData.cs
- EditingCoordinator.cs
- RegionInfo.cs
- FormViewDeletedEventArgs.cs
- DataComponentMethodGenerator.cs
- TypeNameConverter.cs
- IxmlLineInfo.cs
- DataGridViewCellValueEventArgs.cs
- HyperLinkField.cs
- SQLBytesStorage.cs
- PersistenceMetadataNamespace.cs
- LabelLiteral.cs
- NameTable.cs
- PropertyDescriptor.cs
- ServicePointManager.cs
- ImmutablePropertyDescriptorGridEntry.cs
- OrderedDictionary.cs
- Renderer.cs
- WorkflowMessageEventArgs.cs
- InfoCardTraceRecord.cs
- StorageAssociationSetMapping.cs
- RelationshipManager.cs
- EqualityArray.cs
- CodeNamespace.cs
- HandlerFactoryCache.cs
- WebPartCollection.cs
- ListItem.cs
- exports.cs
- ConstructorBuilder.cs
- FtpWebRequest.cs
- TypeConstant.cs
- SimpleBitVector32.cs
- OutputCacheSettingsSection.cs
- SimpleHandlerFactory.cs
- RequestQueryParser.cs
- ClientSponsor.cs
- ArcSegment.cs
- unitconverter.cs
- LaxModeSecurityHeaderElementInferenceEngine.cs
- ServerType.cs
- XmlDataLoader.cs
- SrgsDocumentParser.cs
- DataBoundControlParameterTarget.cs
- XmlNodeReader.cs
- TaskHelper.cs
- MorphHelpers.cs
- Number.cs
- Region.cs
- SystemColors.cs
- ButtonPopupAdapter.cs
- updateconfighost.cs
- PolyLineSegmentFigureLogic.cs
- StorageAssociationTypeMapping.cs
- SurrogateEncoder.cs
- ItemPager.cs
- TreeViewHitTestInfo.cs
- AspProxy.cs
- _AutoWebProxyScriptEngine.cs
- HtmlElementEventArgs.cs
- ZeroOpNode.cs
- InternalConfigEventArgs.cs
- NavigationService.cs
- SqlProfileProvider.cs
- Tuple.cs
- Menu.cs
- DockPattern.cs
- CriticalFinalizerObject.cs
- UserThread.cs
- MailSettingsSection.cs
- DataGridViewDataErrorEventArgs.cs
- ConnectionStringsSection.cs
- EntityKey.cs
- XmlSchemaSimpleTypeList.cs
- ConfigurationStrings.cs
- UMPAttributes.cs
- PlacementWorkspace.cs
- OLEDB_Util.cs
- ConditionChanges.cs
- ExitEventArgs.cs
- Latin1Encoding.cs
- IpcClientChannel.cs
- ContextQuery.cs
- XmlIlVisitor.cs
- ReferenceEqualityComparer.cs
- DispatcherOperation.cs
- DataGridViewRowPostPaintEventArgs.cs
- DataGridViewComboBoxEditingControl.cs