Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / 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; } } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SerialPort.cs
- WebSysDisplayNameAttribute.cs
- LinqDataSourceView.cs
- SettingsAttributes.cs
- TableLayoutStyle.cs
- BuildProvider.cs
- CodeTypeParameter.cs
- EntityTemplateFactory.cs
- InheritanceRules.cs
- ICspAsymmetricAlgorithm.cs
- FullTextBreakpoint.cs
- Misc.cs
- EventProviderBase.cs
- WebEventCodes.cs
- XmlUtf8RawTextWriter.cs
- ApplicationServiceHelper.cs
- EntitySqlQueryCacheKey.cs
- BitmapCodecInfoInternal.cs
- CellIdBoolean.cs
- ColumnHeaderConverter.cs
- CapabilitiesAssignment.cs
- GridViewUpdatedEventArgs.cs
- Variable.cs
- UnsafeNativeMethods.cs
- OleDbEnumerator.cs
- SkinBuilder.cs
- DiagnosticStrings.cs
- GridViewCancelEditEventArgs.cs
- Inline.cs
- XmlEncoding.cs
- SQLRoleProvider.cs
- ScriptHandlerFactory.cs
- NameSpaceExtractor.cs
- DetailsViewDesigner.cs
- SqlUtils.cs
- SqlProvider.cs
- SequenceRange.cs
- UnknownBitmapDecoder.cs
- CacheVirtualItemsEvent.cs
- HwndHost.cs
- ConfigurationStrings.cs
- WorkflowRuntimeServiceElementCollection.cs
- DataViewListener.cs
- BitmapEffectInputConnector.cs
- QilParameter.cs
- XPathBuilder.cs
- AncestorChangedEventArgs.cs
- LogWriteRestartAreaState.cs
- UserPersonalizationStateInfo.cs
- XPathDescendantIterator.cs
- PenThread.cs
- PartManifestEntry.cs
- CroppedBitmap.cs
- ListViewDataItem.cs
- VersionedStream.cs
- XdrBuilder.cs
- GridPattern.cs
- PreviewPageInfo.cs
- Library.cs
- StaticSiteMapProvider.cs
- DataBindingValueUIHandler.cs
- MemoryMappedViewStream.cs
- DataPagerField.cs
- Deflater.cs
- EngineSite.cs
- ImportCatalogPart.cs
- FrameDimension.cs
- DetailsViewCommandEventArgs.cs
- CodeTypeParameter.cs
- Aes.cs
- TTSEngineTypes.cs
- StateBag.cs
- autovalidator.cs
- Misc.cs
- EdmProperty.cs
- BCLDebug.cs
- PropertyValueUIItem.cs
- Hashtable.cs
- _NativeSSPI.cs
- PixelFormat.cs
- PseudoWebRequest.cs
- FormViewPagerRow.cs
- GZipDecoder.cs
- UnionCodeGroup.cs
- Dictionary.cs
- ExpressionVisitorHelpers.cs
- Compiler.cs
- UserControl.cs
- EnumConverter.cs
- RemotingAttributes.cs
- ChannelManager.cs
- XPathNodeIterator.cs
- BrowserDefinitionCollection.cs
- XmlSchemaInfo.cs
- Rect.cs
- ExpressionConverter.cs
- DataViewListener.cs
- EmbeddedMailObject.cs
- PropertyDescriptorGridEntry.cs
- PersonalizationAdministration.cs