Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Configuration / System / Configuration / TypeNameConverter.cs / 1305376 / TypeNameConverter.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
using System;
using System.Collections;
using System.IO;
using System.Reflection;
using System.Security.Permissions;
using System.Xml;
using System.Collections.Specialized;
using System.Globalization;
using System.ComponentModel;
using System.Security;
using System.Text;
namespace System.Configuration {
public sealed class TypeNameConverter : ConfigurationConverterBase {
public override object ConvertTo(ITypeDescriptorContext ctx, CultureInfo ci, object value, Type type) {
// Make the check here since for some reason value.GetType is not System.Type but RuntimeType
if (!(value is Type)) {
ValidateType(value, typeof(Type));
}
string result = null;
if (value != null) {
result = ((Type)value).AssemblyQualifiedName;
}
return result;
}
public override object ConvertFrom(ITypeDescriptorContext ctx, CultureInfo ci, object data) {
Type result = TypeUtil.GetTypeWithReflectionPermission((string)data, false);
if (result == null) {
throw new ArgumentException(SR.GetString(SR.Type_cannot_be_resolved, (string)data));
}
return result;
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
using System;
using System.Collections;
using System.IO;
using System.Reflection;
using System.Security.Permissions;
using System.Xml;
using System.Collections.Specialized;
using System.Globalization;
using System.ComponentModel;
using System.Security;
using System.Text;
namespace System.Configuration {
public sealed class TypeNameConverter : ConfigurationConverterBase {
public override object ConvertTo(ITypeDescriptorContext ctx, CultureInfo ci, object value, Type type) {
// Make the check here since for some reason value.GetType is not System.Type but RuntimeType
if (!(value is Type)) {
ValidateType(value, typeof(Type));
}
string result = null;
if (value != null) {
result = ((Type)value).AssemblyQualifiedName;
}
return result;
}
public override object ConvertFrom(ITypeDescriptorContext ctx, CultureInfo ci, object data) {
Type result = TypeUtil.GetTypeWithReflectionPermission((string)data, false);
if (result == null) {
throw new ArgumentException(SR.GetString(SR.Type_cannot_be_resolved, (string)data));
}
return result;
}
}
}
// 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
- TextRunCacheImp.cs
- LocationChangedEventArgs.cs
- TimeManager.cs
- VariableValue.cs
- Attributes.cs
- DataGridViewUtilities.cs
- EventKeyword.cs
- ConfigXmlText.cs
- OSFeature.cs
- FloaterParagraph.cs
- StreamMarshaler.cs
- ResourcesGenerator.cs
- TextPenaltyModule.cs
- XpsFixedDocumentSequenceReaderWriter.cs
- Convert.cs
- Mouse.cs
- CustomUserNameSecurityTokenAuthenticator.cs
- DefaultTextStoreTextComposition.cs
- MergeFailedEvent.cs
- Schema.cs
- OracleCommandSet.cs
- ObjectDataSourceDisposingEventArgs.cs
- EntityDataSourceValidationException.cs
- SchemaCollectionPreprocessor.cs
- ExpressionUtilities.cs
- StreamResourceInfo.cs
- XmlSchemaFacet.cs
- GeometryModel3D.cs
- HealthMonitoringSectionHelper.cs
- InputLangChangeEvent.cs
- TabItemWrapperAutomationPeer.cs
- Mapping.cs
- RegexGroup.cs
- GeneratedCodeAttribute.cs
- COSERVERINFO.cs
- SingleSelectRootGridEntry.cs
- AttributeCollection.cs
- ServiceContractViewControl.Designer.cs
- RotateTransform3D.cs
- XmlDocumentSchema.cs
- ChannelEndpointElement.cs
- SerializationSectionGroup.cs
- _IPv6Address.cs
- UrlPath.cs
- RepeatInfo.cs
- SerializationHelper.cs
- _IPv4Address.cs
- XmlSequenceWriter.cs
- Events.cs
- JavaScriptSerializer.cs
- XmlObjectSerializer.cs
- GridViewDeletedEventArgs.cs
- cookie.cs
- MimeMapping.cs
- Line.cs
- TraceXPathNavigator.cs
- PhysicalAddress.cs
- WebPartDescription.cs
- MemberAccessException.cs
- SegmentInfo.cs
- FontStyles.cs
- Button.cs
- Point3DAnimationUsingKeyFrames.cs
- ObjectRef.cs
- MaxValueConverter.cs
- ErrorHandler.cs
- CacheSection.cs
- Rule.cs
- InputReferenceExpression.cs
- SecurityUtils.cs
- DataGridCell.cs
- ConfigurationLocationCollection.cs
- Listbox.cs
- BaseUriHelper.cs
- SchemaElement.cs
- KnownTypesHelper.cs
- ProcessModelInfo.cs
- MemberNameValidator.cs
- FrugalList.cs
- GeometryHitTestResult.cs
- SwitchLevelAttribute.cs
- XamlSerializationHelper.cs
- CqlIdentifiers.cs
- HttpListenerRequest.cs
- FormsAuthenticationEventArgs.cs
- ShaderEffect.cs
- ListViewSelectEventArgs.cs
- EditCommandColumn.cs
- SQLConvert.cs
- AccessedThroughPropertyAttribute.cs
- SystemFonts.cs
- ServiceOperationDetailViewControl.cs
- EncryptedReference.cs
- SuppressedPackageProperties.cs
- WebCodeGenerator.cs
- TcpDuplicateContext.cs
- DataObjectFieldAttribute.cs
- RefreshPropertiesAttribute.cs
- XPathAxisIterator.cs