Code:
/ 4.0 / 4.0 / 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. //------------------------------------------------------------------------------ //// 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
- ResourcesGenerator.cs
- SqlConnectionString.cs
- Vector3DCollectionConverter.cs
- DeferredSelectedIndexReference.cs
- BaseDataList.cs
- FormViewInsertEventArgs.cs
- SimpleWebHandlerParser.cs
- translator.cs
- ScriptingProfileServiceSection.cs
- SecurityPolicySection.cs
- ScriptMethodAttribute.cs
- OdbcConnectionOpen.cs
- ForceCopyBuildProvider.cs
- TableParagraph.cs
- securitymgrsite.cs
- TextElement.cs
- SemanticAnalyzer.cs
- StateChangeEvent.cs
- ButtonPopupAdapter.cs
- ToolStripActionList.cs
- SecurityTokenException.cs
- DataBindingsDialog.cs
- TdsParser.cs
- InfocardExtendedInformationCollection.cs
- RegexInterpreter.cs
- SQLBytes.cs
- adornercollection.cs
- OdbcStatementHandle.cs
- AnnotationAdorner.cs
- MouseEventArgs.cs
- RegisteredHiddenField.cs
- DotAtomReader.cs
- NativeMethods.cs
- RuntimeHandles.cs
- DisplayNameAttribute.cs
- PersonalizationAdministration.cs
- WorkflowPersistenceService.cs
- AllMembershipCondition.cs
- RuntimeCompatibilityAttribute.cs
- MaterialGroup.cs
- RequiredFieldValidator.cs
- ListViewSelectEventArgs.cs
- ControlValuePropertyAttribute.cs
- ScrollEvent.cs
- StorageConditionPropertyMapping.cs
- SqlVersion.cs
- FormsAuthenticationUser.cs
- RIPEMD160Managed.cs
- Clause.cs
- ValidationEventArgs.cs
- DrawItemEvent.cs
- DescendantOverDescendantQuery.cs
- NativeWrapper.cs
- TimersDescriptionAttribute.cs
- UidPropertyAttribute.cs
- IndexedEnumerable.cs
- WindowHideOrCloseTracker.cs
- BitmapEffectDrawingContextWalker.cs
- DrawListViewSubItemEventArgs.cs
- KnowledgeBase.cs
- FrameworkRichTextComposition.cs
- CanonicalXml.cs
- CodeExporter.cs
- XmlNode.cs
- RegistrySecurity.cs
- DataDocumentXPathNavigator.cs
- EntitySetDataBindingList.cs
- ConnectionsZoneAutoFormat.cs
- GlyphTypeface.cs
- RootProfilePropertySettingsCollection.cs
- XPathExpr.cs
- ObjectManager.cs
- Byte.cs
- QilBinary.cs
- CompareValidator.cs
- HandlerBase.cs
- RegexCode.cs
- BufferModesCollection.cs
- PictureBox.cs
- ViewStateModeByIdAttribute.cs
- XmlTextWriter.cs
- NamespaceTable.cs
- ResourceWriter.cs
- OleDbConnectionInternal.cs
- FileRecordSequence.cs
- DataDocumentXPathNavigator.cs
- x509utils.cs
- ImageSourceValueSerializer.cs
- XpsSerializationManager.cs
- LineServicesRun.cs
- WsdlWriter.cs
- MULTI_QI.cs
- FunctionUpdateCommand.cs
- SqlIdentifier.cs
- AutomationElementCollection.cs
- CollectionBase.cs
- MetafileEditor.cs
- ProcessStartInfo.cs
- _AutoWebProxyScriptHelper.cs
- DataServiceStreamResponse.cs