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
- GPPOINTF.cs
- ExplicitDiscriminatorMap.cs
- ValidationErrorEventArgs.cs
- FlowDocumentScrollViewer.cs
- _emptywebproxy.cs
- AttributeUsageAttribute.cs
- PropertyChangedEventArgs.cs
- CngProvider.cs
- CryptoApi.cs
- CookieProtection.cs
- ClientTargetSection.cs
- validation.cs
- SafeArrayTypeMismatchException.cs
- AutomationEvent.cs
- ObjectContextServiceProvider.cs
- ToolStripSettings.cs
- SubtreeProcessor.cs
- SecurityTokenAttachmentMode.cs
- NativeMethods.cs
- SystemBrushes.cs
- Style.cs
- ResourceCategoryAttribute.cs
- Object.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- FormViewRow.cs
- oledbconnectionstring.cs
- AutoCompleteStringCollection.cs
- ExtensionSimplifierMarkupObject.cs
- NTAccount.cs
- ValidatorUtils.cs
- HiddenFieldPageStatePersister.cs
- LabelLiteral.cs
- BaseResourcesBuildProvider.cs
- ColorConvertedBitmap.cs
- SmiContext.cs
- XmlSchemaCompilationSettings.cs
- AudioBase.cs
- AdapterUtil.cs
- XmlnsDefinitionAttribute.cs
- PageAdapter.cs
- PolyQuadraticBezierSegmentFigureLogic.cs
- RemotingServices.cs
- CompatibleIComparer.cs
- StrokeNodeData.cs
- counter.cs
- AccessControlEntry.cs
- EventLogLink.cs
- UniformGrid.cs
- UserInitiatedNavigationPermission.cs
- externdll.cs
- DataGridItemAttachedStorage.cs
- TraceHandlerErrorFormatter.cs
- IsolatedStorageFile.cs
- BitmapEffectState.cs
- RawStylusSystemGestureInputReport.cs
- SystemIcmpV6Statistics.cs
- PeerInvitationResponse.cs
- FlowDocumentPage.cs
- DataGridViewRowCancelEventArgs.cs
- httpapplicationstate.cs
- CFStream.cs
- thaishape.cs
- Zone.cs
- PageAsyncTask.cs
- CommittableTransaction.cs
- PassportPrincipal.cs
- Helpers.cs
- VariableReference.cs
- StateItem.cs
- SessionStateContainer.cs
- WsatAdminException.cs
- DataTableReader.cs
- DisposableCollectionWrapper.cs
- ButtonField.cs
- StorageRoot.cs
- PolyBezierSegment.cs
- Light.cs
- TextEditorSpelling.cs
- EdmPropertyAttribute.cs
- RewritingSimplifier.cs
- SqlAliasesReferenced.cs
- InfoCardTrace.cs
- XamlTemplateSerializer.cs
- TraceHwndHost.cs
- Int16Storage.cs
- WebBrowserBase.cs
- XmlTextAttribute.cs
- MethodExpr.cs
- MembershipSection.cs
- Query.cs
- Stackframe.cs
- UtilityExtension.cs
- BatchWriter.cs
- DataRowView.cs
- counter.cs
- LogReservationCollection.cs
- SizeFConverter.cs
- InternalCache.cs
- ResourcesGenerator.cs
- TemplateBamlRecordReader.cs