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
- Point4DConverter.cs
- EntityTypeBase.cs
- ProxyHelper.cs
- ReferentialConstraint.cs
- ViewEventArgs.cs
- TextServicesDisplayAttribute.cs
- HttpSocketManager.cs
- AppDomain.cs
- TimeSpanMinutesConverter.cs
- SqlDataRecord.cs
- LicenseException.cs
- SendMailErrorEventArgs.cs
- TemplateApplicationHelper.cs
- TypeConverterValueSerializer.cs
- ValidatorCollection.cs
- COM2ColorConverter.cs
- SettingsPropertyCollection.cs
- StoreItemCollection.cs
- GroupedContextMenuStrip.cs
- CollectionViewProxy.cs
- ExpressionEditorSheet.cs
- RadioButtonBaseAdapter.cs
- ProcessModelSection.cs
- NetCodeGroup.cs
- DataColumnChangeEvent.cs
- DispatchChannelSink.cs
- IPAddressCollection.cs
- PagerSettings.cs
- CapacityStreamGeometryContext.cs
- ShapeTypeface.cs
- UIElement3DAutomationPeer.cs
- BitmapEffectInputConnector.cs
- RealProxy.cs
- FramingFormat.cs
- TraceInternal.cs
- IWorkflowDebuggerService.cs
- WebReferencesBuildProvider.cs
- TimeoutStream.cs
- X509KeyIdentifierClauseType.cs
- ConnectionPoint.cs
- ProgressBar.cs
- DateTimeConstantAttribute.cs
- DataGridViewEditingControlShowingEventArgs.cs
- PreProcessor.cs
- Message.cs
- XmlRawWriterWrapper.cs
- CustomPopupPlacement.cs
- DragEventArgs.cs
- SqlPersonalizationProvider.cs
- BatchServiceHost.cs
- DataGridViewRowErrorTextNeededEventArgs.cs
- WmfPlaceableFileHeader.cs
- RegexFCD.cs
- NavigatorInput.cs
- LicenseContext.cs
- ToolStripInSituService.cs
- TimeSpanStorage.cs
- QualifiedCellIdBoolean.cs
- RegistrySecurity.cs
- DesignerWithHeader.cs
- NameValueCollection.cs
- CodeCastExpression.cs
- Image.cs
- Camera.cs
- ResourcePool.cs
- ReachUIElementCollectionSerializerAsync.cs
- SqlCacheDependencyDatabaseCollection.cs
- MarkedHighlightComponent.cs
- PagedDataSource.cs
- RSACryptoServiceProvider.cs
- DecimalAnimation.cs
- TypeDescriptorFilterService.cs
- ProjectionCamera.cs
- PerformanceCountersElement.cs
- HijriCalendar.cs
- HtmlHistory.cs
- HtmlInputReset.cs
- FixedSOMPageConstructor.cs
- ShaderEffect.cs
- MimeTypeAttribute.cs
- GenericsInstances.cs
- DataException.cs
- MenuItem.cs
- AsyncOperation.cs
- DataContractAttribute.cs
- DispatcherObject.cs
- DnsPermission.cs
- StandardToolWindows.cs
- RemotingServices.cs
- CopyCodeAction.cs
- WebPartDesigner.cs
- ADMembershipProvider.cs
- MetadataUtilsSmi.cs
- ExpressionBuilder.cs
- HTMLTextWriter.cs
- Literal.cs
- VisualProxy.cs
- SEHException.cs
- AdapterSwitches.cs
- ModelFunctionTypeElement.cs