Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / Configuration / MachineKeyValidationConverter.cs / 1305376 / MachineKeyValidationConverter.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; using System.Configuration; namespace System.Web.Configuration { [System.Security.Permissions.HostProtection(MayLeakOnAbort = true)] public sealed class MachineKeyValidationConverter : ConfigurationConverterBase { public override object ConvertTo(ITypeDescriptorContext ctx, CultureInfo ci, object value, Type type) { if (!(value is MachineKeyValidation)) { throw new ArgumentException(SR.GetString(SR.Config_Invalid_enum_value, "SHA1, MD5, 3DES, AES, HMACSHA256, HMACSHA384, HMACSHA512")); } return ConvertFromEnum((MachineKeyValidation)value); } public override object ConvertFrom(ITypeDescriptorContext ctx, CultureInfo ci, object data) { return ConvertToEnum((string)data); } internal static string ConvertFromEnum(MachineKeyValidation enumValue) { switch (enumValue) { case MachineKeyValidation.SHA1: return "SHA1"; case MachineKeyValidation.MD5: return "MD5"; case MachineKeyValidation.TripleDES: return "3DES"; case MachineKeyValidation.AES: return "AES"; case MachineKeyValidation.HMACSHA256: return "HMACSHA256"; case MachineKeyValidation.HMACSHA384: return "HMACSHA384"; case MachineKeyValidation.HMACSHA512: return "HMACSHA512"; default: throw new ArgumentException(SR.GetString(SR.Wrong_validation_enum)); } } internal static MachineKeyValidation ConvertToEnum(string strValue) { if (strValue==null) return MachineKeySection.DefaultValidation; switch (strValue) { case "SHA1": return MachineKeyValidation.SHA1; case "MD5": return MachineKeyValidation.MD5; case "3DES": return MachineKeyValidation.TripleDES; case "AES": return MachineKeyValidation.AES; case "HMACSHA256": return MachineKeyValidation.HMACSHA256; case "HMACSHA384": return MachineKeyValidation.HMACSHA384; case "HMACSHA512": return MachineKeyValidation.HMACSHA512; default: if (strValue.StartsWith("alg:", StringComparison.Ordinal)) return MachineKeyValidation.Custom; throw new ArgumentException(SR.GetString(SR.Wrong_validation_enum)); } } } } // 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; using System.Configuration; namespace System.Web.Configuration { [System.Security.Permissions.HostProtection(MayLeakOnAbort = true)] public sealed class MachineKeyValidationConverter : ConfigurationConverterBase { public override object ConvertTo(ITypeDescriptorContext ctx, CultureInfo ci, object value, Type type) { if (!(value is MachineKeyValidation)) { throw new ArgumentException(SR.GetString(SR.Config_Invalid_enum_value, "SHA1, MD5, 3DES, AES, HMACSHA256, HMACSHA384, HMACSHA512")); } return ConvertFromEnum((MachineKeyValidation)value); } public override object ConvertFrom(ITypeDescriptorContext ctx, CultureInfo ci, object data) { return ConvertToEnum((string)data); } internal static string ConvertFromEnum(MachineKeyValidation enumValue) { switch (enumValue) { case MachineKeyValidation.SHA1: return "SHA1"; case MachineKeyValidation.MD5: return "MD5"; case MachineKeyValidation.TripleDES: return "3DES"; case MachineKeyValidation.AES: return "AES"; case MachineKeyValidation.HMACSHA256: return "HMACSHA256"; case MachineKeyValidation.HMACSHA384: return "HMACSHA384"; case MachineKeyValidation.HMACSHA512: return "HMACSHA512"; default: throw new ArgumentException(SR.GetString(SR.Wrong_validation_enum)); } } internal static MachineKeyValidation ConvertToEnum(string strValue) { if (strValue==null) return MachineKeySection.DefaultValidation; switch (strValue) { case "SHA1": return MachineKeyValidation.SHA1; case "MD5": return MachineKeyValidation.MD5; case "3DES": return MachineKeyValidation.TripleDES; case "AES": return MachineKeyValidation.AES; case "HMACSHA256": return MachineKeyValidation.HMACSHA256; case "HMACSHA384": return MachineKeyValidation.HMACSHA384; case "HMACSHA512": return MachineKeyValidation.HMACSHA512; default: if (strValue.StartsWith("alg:", StringComparison.Ordinal)) return MachineKeyValidation.Custom; throw new ArgumentException(SR.GetString(SR.Wrong_validation_enum)); } } } } // 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
- OdbcUtils.cs
- ReadWriteObjectLock.cs
- Compensate.cs
- GestureRecognitionResult.cs
- LexicalChunk.cs
- DataSourceXmlTextReader.cs
- RemotingConfigParser.cs
- NativeMethods.cs
- Normalization.cs
- SqlProviderServices.cs
- TextTreeNode.cs
- ContentElementCollection.cs
- WebPartConnectionsCloseVerb.cs
- TableHeaderCell.cs
- ZipIOCentralDirectoryFileHeader.cs
- WrappingXamlSchemaContext.cs
- ComplusTypeValidator.cs
- ChannelManager.cs
- PhoneCallDesigner.cs
- DataGridViewDataErrorEventArgs.cs
- SpecialTypeDataContract.cs
- LongValidator.cs
- PopupEventArgs.cs
- ReadOnlyMetadataCollection.cs
- FormsIdentity.cs
- SQLResource.cs
- NonClientArea.cs
- WindowsListViewSubItem.cs
- WebPartEventArgs.cs
- WebPartVerb.cs
- safex509handles.cs
- SamlAuthorityBinding.cs
- WindowsFormsSynchronizationContext.cs
- WebControl.cs
- SecurityTokenProviderContainer.cs
- ErrorFormatterPage.cs
- TemplateField.cs
- BinaryFormatterWriter.cs
- ApplicationContext.cs
- CommonProperties.cs
- NumericExpr.cs
- TrackingServices.cs
- TraceUtils.cs
- DecodeHelper.cs
- SqlBuilder.cs
- HealthMonitoringSectionHelper.cs
- MulticastNotSupportedException.cs
- AutoResizedEvent.cs
- PowerEase.cs
- RequestCachePolicy.cs
- Comparer.cs
- UpdateExpressionVisitor.cs
- WeakHashtable.cs
- SecurityTokenSerializer.cs
- RefreshPropertiesAttribute.cs
- ReadOnlyMetadataCollection.cs
- EventLog.cs
- RunInstallerAttribute.cs
- GridViewRow.cs
- RegistrySecurity.cs
- PKCS1MaskGenerationMethod.cs
- GeneralTransform2DTo3D.cs
- SmtpNtlmAuthenticationModule.cs
- StringCollectionEditor.cs
- Ppl.cs
- TextSearch.cs
- TreeNode.cs
- UIElement.cs
- UriScheme.cs
- ScriptManagerProxy.cs
- WrappedReader.cs
- TableChangeProcessor.cs
- ScopelessEnumAttribute.cs
- XmlCodeExporter.cs
- TextDecorationCollection.cs
- XPathPatternParser.cs
- COM2ExtendedBrowsingHandler.cs
- Trace.cs
- SerializationEventsCache.cs
- TargetControlTypeAttribute.cs
- XamlReaderConstants.cs
- NetCodeGroup.cs
- MobileCapabilities.cs
- StatusBarAutomationPeer.cs
- IIS7UserPrincipal.cs
- AttributeParameterInfo.cs
- DBSchemaTable.cs
- StreamWriter.cs
- _NetRes.cs
- PreloadHost.cs
- NameObjectCollectionBase.cs
- XmlJsonReader.cs
- ResourceAssociationSet.cs
- ActivityInstance.cs
- DataExpression.cs
- ObjectDataSourceView.cs
- HwndKeyboardInputProvider.cs
- StringOutput.cs
- URLIdentityPermission.cs
- AlternateViewCollection.cs