Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DynamicObjectAccessor.cs
- SimpleTableProvider.cs
- ChannelTraceRecord.cs
- EdmEntityTypeAttribute.cs
- NavigatingCancelEventArgs.cs
- JavaScriptObjectDeserializer.cs
- DateTimeConverter2.cs
- DelegatingConfigHost.cs
- SharedUtils.cs
- ToolStripItemCollection.cs
- DrawingCollection.cs
- InnerItemCollectionView.cs
- PointCollectionConverter.cs
- RuntimeConfigLKG.cs
- EntityModelSchemaGenerator.cs
- Line.cs
- UpdatePanelTriggerCollection.cs
- CaseInsensitiveComparer.cs
- LinearKeyFrames.cs
- GroupBoxAutomationPeer.cs
- mediaeventargs.cs
- SafeEventLogWriteHandle.cs
- EffectiveValueEntry.cs
- MimeTypeAttribute.cs
- WhitespaceRule.cs
- NoClickablePointException.cs
- LinkedResourceCollection.cs
- MailWriter.cs
- ClassImporter.cs
- PointCollection.cs
- Form.cs
- CodeTypeOfExpression.cs
- Or.cs
- RegexGroupCollection.cs
- Decorator.cs
- RepeatEnumerable.cs
- TypeUtil.cs
- SelectorAutomationPeer.cs
- DrawingContextWalker.cs
- TypeDescriptionProvider.cs
- HttpValueCollection.cs
- Rules.cs
- HelpHtmlBuilder.cs
- BackStopAuthenticationModule.cs
- FieldCollectionEditor.cs
- SpellerError.cs
- BasicCellRelation.cs
- DataPagerFieldItem.cs
- ButtonPopupAdapter.cs
- DeferredTextReference.cs
- SiteMap.cs
- SafeReversePInvokeHandle.cs
- bidPrivateBase.cs
- DbDeleteCommandTree.cs
- DotExpr.cs
- _BufferOffsetSize.cs
- DesignTimeParseData.cs
- QilReference.cs
- ObjectTag.cs
- HashStream.cs
- _StreamFramer.cs
- Vector3D.cs
- ThreadNeutralSemaphore.cs
- SignatureToken.cs
- TrustManagerPromptUI.cs
- NamedPipeAppDomainProtocolHandler.cs
- SmiMetaDataProperty.cs
- TimeStampChecker.cs
- Item.cs
- LayoutTableCell.cs
- UriExt.cs
- BindingCollectionElement.cs
- SortExpressionBuilder.cs
- listviewsubitemcollectioneditor.cs
- XmlSchemaImport.cs
- DesignerExtenders.cs
- Journal.cs
- MultiBindingExpression.cs
- DataGridViewRowsAddedEventArgs.cs
- SQLInt16.cs
- ConfigXmlAttribute.cs
- PaperSize.cs
- ClientUtils.cs
- unsafeIndexingFilterStream.cs
- ValidationSummary.cs
- CodeCatchClauseCollection.cs
- SimpleLine.cs
- SymbolType.cs
- MessageParameterAttribute.cs
- DateTimeValueSerializerContext.cs
- UpdatePanelControlTrigger.cs
- ObjectSet.cs
- ProxyWebPartConnectionCollection.cs
- ActiveDocumentEvent.cs
- DateTimeValueSerializerContext.cs
- TextPattern.cs
- TraceUtility.cs
- CodeSubDirectoriesCollection.cs
- DeadLetterQueue.cs
- RC2.cs