Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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
- InheritanceContextHelper.cs
- SerializationUtilities.cs
- XmlDictionary.cs
- InstanceDataCollection.cs
- MobileUserControlDesigner.cs
- OdbcException.cs
- Mutex.cs
- ReadOnlyDataSource.cs
- PeerNodeTraceRecord.cs
- PropertyGrid.cs
- TransferMode.cs
- RpcAsyncResult.cs
- StyleSheet.cs
- RegexStringValidatorAttribute.cs
- metadatamappinghashervisitor.hashsourcebuilder.cs
- X509CertificateChain.cs
- PrintController.cs
- DataService.cs
- MetadataCacheItem.cs
- SecurityUniqueId.cs
- TransactionManager.cs
- NestedContainer.cs
- PanelDesigner.cs
- WebPart.cs
- ImageCodecInfoPrivate.cs
- SystemThemeKey.cs
- HostProtectionPermission.cs
- TextDecoration.cs
- HttpListenerPrefixCollection.cs
- SchemaSetCompiler.cs
- BrowserCapabilitiesCompiler.cs
- NotificationContext.cs
- XPathDocumentNavigator.cs
- WeakEventManager.cs
- RelationshipDetailsCollection.cs
- AsmxEndpointPickerExtension.cs
- PriorityBindingExpression.cs
- MailWebEventProvider.cs
- GPPOINTF.cs
- _TimerThread.cs
- MdiWindowListStrip.cs
- ObjectContext.cs
- Stroke.cs
- Vector3DAnimation.cs
- EditorOptionAttribute.cs
- CreatingCookieEventArgs.cs
- RegisteredHiddenField.cs
- Function.cs
- FileUpload.cs
- SAPIEngineTypes.cs
- ConnectionPoint.cs
- SecurityState.cs
- SynchronizedDispatch.cs
- OleDbConnectionFactory.cs
- DataConnectionHelper.cs
- PeerNameRegistration.cs
- _SslSessionsCache.cs
- DiscreteKeyFrames.cs
- Symbol.cs
- VideoDrawing.cs
- HtmlSelectionListAdapter.cs
- Type.cs
- rsa.cs
- FreeFormPanel.cs
- XmlHierarchicalEnumerable.cs
- MatrixUtil.cs
- BulletedListEventArgs.cs
- ListViewInsertEventArgs.cs
- SafeEventLogReadHandle.cs
- TimeSpanSecondsConverter.cs
- xmlglyphRunInfo.cs
- OledbConnectionStringbuilder.cs
- NullableConverter.cs
- ProcessThreadCollection.cs
- EntitySetBaseCollection.cs
- DocumentViewerBaseAutomationPeer.cs
- RegistryPermission.cs
- AttributeEmitter.cs
- LoginView.cs
- GridViewEditEventArgs.cs
- ExpressionBuilder.cs
- TypeDescriptor.cs
- HttpListenerRequestUriBuilder.cs
- DeviceContexts.cs
- RegexCompiler.cs
- ListBoxItem.cs
- Int32Storage.cs
- TimeSpanMinutesConverter.cs
- MsmqBindingElementBase.cs
- SHA1Managed.cs
- FocusWithinProperty.cs
- dataSvcMapFileLoader.cs
- TypeForwardedToAttribute.cs
- DataGridViewColumnCollectionDialog.cs
- BrowserCapabilitiesCodeGenerator.cs
- FunctionMappingTranslator.cs
- ContractHandle.cs
- XmlDeclaration.cs
- UInt64Storage.cs
- EmbeddedMailObject.cs