Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- GridLength.cs
- Label.cs
- TabControlDesigner.cs
- SpecularMaterial.cs
- CodePrimitiveExpression.cs
- RecognizerInfo.cs
- Window.cs
- RequiredAttributeAttribute.cs
- DataGridHeadersVisibilityToVisibilityConverter.cs
- HtmlWindowCollection.cs
- ParallelTimeline.cs
- WebBrowserNavigatingEventHandler.cs
- SqlDataReaderSmi.cs
- MetadataArtifactLoader.cs
- ListView.cs
- MbpInfo.cs
- RMPermissions.cs
- ObjectSelectorEditor.cs
- SubMenuStyleCollection.cs
- SqlNotificationRequest.cs
- ReturnEventArgs.cs
- EmissiveMaterial.cs
- TableLayoutPanel.cs
- SqlDelegatedTransaction.cs
- ResourceKey.cs
- TextElementEnumerator.cs
- ReflectEventDescriptor.cs
- SafeMemoryMappedViewHandle.cs
- DesignerProperties.cs
- UnauthorizedWebPart.cs
- CustomError.cs
- BufferedReadStream.cs
- SqlBooleanMismatchVisitor.cs
- DispatcherTimer.cs
- TabControlAutomationPeer.cs
- HMAC.cs
- TextProperties.cs
- MasterPage.cs
- Rectangle.cs
- FontFaceLayoutInfo.cs
- MobileRedirect.cs
- SecureStringHasher.cs
- VisualStateChangedEventArgs.cs
- DiagnosticTraceSchemas.cs
- AdRotatorDesigner.cs
- PermissionSet.cs
- WmfPlaceableFileHeader.cs
- ScaleTransform.cs
- OpenTypeMethods.cs
- NumberSubstitution.cs
- DataGridHyperlinkColumn.cs
- Tile.cs
- DuplicateWaitObjectException.cs
- DataException.cs
- Helper.cs
- ThreadNeutralSemaphore.cs
- InvokePattern.cs
- NamespaceMapping.cs
- GeneralTransformGroup.cs
- HttpChannelFactory.cs
- CounterCreationDataConverter.cs
- ParentControlDesigner.cs
- RegisteredHiddenField.cs
- BinaryFormatterWriter.cs
- FlowDocumentScrollViewer.cs
- PingOptions.cs
- MobileControlDesigner.cs
- ErrorWrapper.cs
- LingerOption.cs
- AccessorTable.cs
- ECDsaCng.cs
- WindowsListView.cs
- SQLSingleStorage.cs
- CodePageUtils.cs
- SurrogateEncoder.cs
- CompilerLocalReference.cs
- XPathAncestorIterator.cs
- TypeName.cs
- TextViewSelectionProcessor.cs
- XmlCharCheckingReader.cs
- SafeNativeMethods.cs
- MonthCalendar.cs
- ToolZone.cs
- PersonalizationProviderCollection.cs
- FileDataSourceCache.cs
- RepeaterCommandEventArgs.cs
- TiffBitmapDecoder.cs
- ApplicationHost.cs
- CodeIterationStatement.cs
- AnimationLayer.cs
- GregorianCalendarHelper.cs
- XmlObjectSerializerReadContextComplex.cs
- EntityDataSourceMemberPath.cs
- MbpInfo.cs
- FormsAuthenticationConfiguration.cs
- SafeFindHandle.cs
- OracleConnectionStringBuilder.cs
- Int32KeyFrameCollection.cs
- TextReader.cs
- ValidatedControlConverter.cs