Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / DEVDIV / depot / DevDiv / releases / whidbey / QFE / ndp / fx / src / xsp / System / Web / Configuration / TrustLevel.cs / 2 / TrustLevel.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Configuration { using System; using System.Xml; using System.Configuration; using System.Collections.Specialized; using System.Collections; using System.IO; using System.Text; using System.ComponentModel; using System.Security.Permissions; // class SecurityPolicySection [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class TrustLevel : ConfigurationElement { private static ConfigurationPropertyCollection _properties; private static readonly ConfigurationProperty _propName = new ConfigurationProperty("name", typeof(string), "Full", null, StdValidatorsAndConverters.NonEmptyStringValidator, ConfigurationPropertyOptions.IsRequired | ConfigurationPropertyOptions.IsKey); private static readonly ConfigurationProperty _propPolicyFile = new ConfigurationProperty("policyFile", typeof(string), "internal", ConfigurationPropertyOptions.IsRequired); private string _PolicyFileExpanded = null; static TrustLevel() { // Property initialization _properties = new ConfigurationPropertyCollection(); _properties.Add(_propName); _properties.Add(_propPolicyFile); } internal TrustLevel() { } public TrustLevel(String name, String policyFile) { Name = name; PolicyFile = policyFile; } protected override ConfigurationPropertyCollection Properties { get { return _properties; } } [ConfigurationProperty("name", IsRequired = true, DefaultValue = "Full", IsKey = true)] [StringValidator(MinLength = 1)] public string Name { get { return (string)base[_propName]; } set { base[_propName] = value; } } [ConfigurationProperty("policyFile", IsRequired = true, DefaultValue = "internal")] public string PolicyFile { get { return (string)base[_propPolicyFile]; } set { base[_propPolicyFile] = value; } } internal string PolicyFileExpanded { get { if (_PolicyFileExpanded == null) { // string filename = ElementInformation.Properties["policyFile"].Source; String strDir = filename.Substring(0, filename.LastIndexOf('\\') + 1); bool fAppend = true; // Append filename to directory else return just filename if (PolicyFile.Length > 1) { char c1 = PolicyFile[1]; char c0 = PolicyFile[0]; if (c1 == ':') { // Absolute file path fAppend = false; } else if (c0 == '\\' && c1 == '\\') { // UNC file path fAppend = false; } } if (fAppend) { _PolicyFileExpanded = strDir + PolicyFile; } else { _PolicyFileExpanded = PolicyFile; } } return _PolicyFileExpanded; } } } // class TrustLevel } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Configuration { using System; using System.Xml; using System.Configuration; using System.Collections.Specialized; using System.Collections; using System.IO; using System.Text; using System.ComponentModel; using System.Security.Permissions; // class SecurityPolicySection [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class TrustLevel : ConfigurationElement { private static ConfigurationPropertyCollection _properties; private static readonly ConfigurationProperty _propName = new ConfigurationProperty("name", typeof(string), "Full", null, StdValidatorsAndConverters.NonEmptyStringValidator, ConfigurationPropertyOptions.IsRequired | ConfigurationPropertyOptions.IsKey); private static readonly ConfigurationProperty _propPolicyFile = new ConfigurationProperty("policyFile", typeof(string), "internal", ConfigurationPropertyOptions.IsRequired); private string _PolicyFileExpanded = null; static TrustLevel() { // Property initialization _properties = new ConfigurationPropertyCollection(); _properties.Add(_propName); _properties.Add(_propPolicyFile); } internal TrustLevel() { } public TrustLevel(String name, String policyFile) { Name = name; PolicyFile = policyFile; } protected override ConfigurationPropertyCollection Properties { get { return _properties; } } [ConfigurationProperty("name", IsRequired = true, DefaultValue = "Full", IsKey = true)] [StringValidator(MinLength = 1)] public string Name { get { return (string)base[_propName]; } set { base[_propName] = value; } } [ConfigurationProperty("policyFile", IsRequired = true, DefaultValue = "internal")] public string PolicyFile { get { return (string)base[_propPolicyFile]; } set { base[_propPolicyFile] = value; } } internal string PolicyFileExpanded { get { if (_PolicyFileExpanded == null) { // string filename = ElementInformation.Properties["policyFile"].Source; String strDir = filename.Substring(0, filename.LastIndexOf('\\') + 1); bool fAppend = true; // Append filename to directory else return just filename if (PolicyFile.Length > 1) { char c1 = PolicyFile[1]; char c0 = PolicyFile[0]; if (c1 == ':') { // Absolute file path fAppend = false; } else if (c0 == '\\' && c1 == '\\') { // UNC file path fAppend = false; } } if (fAppend) { _PolicyFileExpanded = strDir + PolicyFile; } else { _PolicyFileExpanded = PolicyFile; } } return _PolicyFileExpanded; } } } // class TrustLevel } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- AssociatedControlConverter.cs
- CssTextWriter.cs
- DashStyle.cs
- FunctionQuery.cs
- Model3D.cs
- SerializationInfo.cs
- CornerRadius.cs
- LineVisual.cs
- CapacityStreamGeometryContext.cs
- XmlSchemaImport.cs
- FormView.cs
- EventLogReader.cs
- DataBoundControlHelper.cs
- DataGridTextBox.cs
- ClientSettingsSection.cs
- SatelliteContractVersionAttribute.cs
- StorageBasedPackageProperties.cs
- WebPartMovingEventArgs.cs
- LambdaCompiler.ControlFlow.cs
- XmlIncludeAttribute.cs
- ConstantSlot.cs
- ItemChangedEventArgs.cs
- FlowLayout.cs
- DataColumnChangeEvent.cs
- CacheMemory.cs
- HMACSHA384.cs
- XPathDocumentNavigator.cs
- RegexCapture.cs
- HebrewCalendar.cs
- SessionStateSection.cs
- ClientSession.cs
- FrameDimension.cs
- RoutedEventHandlerInfo.cs
- DataRelation.cs
- HtmlFormParameterReader.cs
- Expression.cs
- InfiniteTimeSpanConverter.cs
- TextRunProperties.cs
- Effect.cs
- XmlSchemaImport.cs
- ObjectViewEntityCollectionData.cs
- FlowDocumentPage.cs
- PropertyManager.cs
- OTFRasterizer.cs
- JournalEntryStack.cs
- DtrList.cs
- TextEditorSelection.cs
- OleDbCommand.cs
- WebControlAdapter.cs
- ReferenceConverter.cs
- errorpatternmatcher.cs
- TextServicesCompartment.cs
- DataContractSet.cs
- ErrorWrapper.cs
- WrappedReader.cs
- FixedSOMPageConstructor.cs
- MsmqTransportSecurity.cs
- EntitySqlQueryCacheEntry.cs
- PageBreakRecord.cs
- HtmlWindowCollection.cs
- SyntaxCheck.cs
- IdentityNotMappedException.cs
- ObjectItemCachedAssemblyLoader.cs
- IntSecurity.cs
- ping.cs
- CompileXomlTask.cs
- TextStore.cs
- PersonalizableTypeEntry.cs
- SecureStringHasher.cs
- ClockController.cs
- Int16Animation.cs
- BaseTemplateBuildProvider.cs
- FunctionCommandText.cs
- FamilyTypefaceCollection.cs
- MetadataPropertyCollection.cs
- SystemIPInterfaceStatistics.cs
- WebPartConnectionsCancelEventArgs.cs
- ArgIterator.cs
- PerformanceCounterCategory.cs
- VSWCFServiceContractGenerator.cs
- FileStream.cs
- TrustDriver.cs
- NativeRightsManagementAPIsStructures.cs
- XsdDuration.cs
- CompiledAction.cs
- MimeFormReflector.cs
- MemoryPressure.cs
- TaskScheduler.cs
- FloaterBaseParaClient.cs
- Calendar.cs
- XmlNode.cs
- MimeMapping.cs
- _ProxyChain.cs
- JapaneseLunisolarCalendar.cs
- ClassHandlersStore.cs
- DecimalConverter.cs
- DetailsViewModeEventArgs.cs
- DataServiceExpressionVisitor.cs
- Label.cs
- XPathArrayIterator.cs