Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / Configuration / System / Configuration / PropertySourceInfo.cs / 1 / PropertySourceInfo.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Configuration.Internal; using System.Collections; using System.Collections.Specialized; using System.Collections.Generic; using System.IO; using System.Reflection; using System.Security.Permissions; using System.Xml; using System.Globalization; using System.ComponentModel; using System.Security; using System.Text; namespace System.Configuration { internal class PropertySourceInfo { private string _fileName; private int _lineNumber; internal PropertySourceInfo(XmlReader reader) { _fileName = GetFilename(reader); _lineNumber = GetLineNumber(reader); } internal string FileName { get { // // Ensure we return the same string to the caller as the one on which we issued the demand. // string filename = _fileName; try { new FileIOPermission(FileIOPermissionAccess.PathDiscovery, filename).Demand(); } catch (SecurityException) { // don't expose the path to this user but show the filename filename = Path.GetFileName(_fileName); if (filename == null) { filename = String.Empty; } } return filename; } } internal int LineNumber { get { return _lineNumber; } } private string GetFilename(XmlReader reader) { IConfigErrorInfo err = reader as IConfigErrorInfo; if (err != null) { return (string)err.Filename; } return ""; } private int GetLineNumber(XmlReader reader) { IConfigErrorInfo err = reader as IConfigErrorInfo; if (err != null) { return (int)err.LineNumber; } return 0; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Configuration.Internal; using System.Collections; using System.Collections.Specialized; using System.Collections.Generic; using System.IO; using System.Reflection; using System.Security.Permissions; using System.Xml; using System.Globalization; using System.ComponentModel; using System.Security; using System.Text; namespace System.Configuration { internal class PropertySourceInfo { private string _fileName; private int _lineNumber; internal PropertySourceInfo(XmlReader reader) { _fileName = GetFilename(reader); _lineNumber = GetLineNumber(reader); } internal string FileName { get { // // Ensure we return the same string to the caller as the one on which we issued the demand. // string filename = _fileName; try { new FileIOPermission(FileIOPermissionAccess.PathDiscovery, filename).Demand(); } catch (SecurityException) { // don't expose the path to this user but show the filename filename = Path.GetFileName(_fileName); if (filename == null) { filename = String.Empty; } } return filename; } } internal int LineNumber { get { return _lineNumber; } } private string GetFilename(XmlReader reader) { IConfigErrorInfo err = reader as IConfigErrorInfo; if (err != null) { return (string)err.Filename; } return ""; } private int GetLineNumber(XmlReader reader) { IConfigErrorInfo err = reader as IConfigErrorInfo; if (err != null) { return (int)err.LineNumber; } return 0; } } } // 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
- SQLResource.cs
- XmlSchemaSet.cs
- FontStyle.cs
- BitmapEffect.cs
- OleDbConnectionFactory.cs
- HttpServerVarsCollection.cs
- GridItemProviderWrapper.cs
- Parsers.cs
- KnownBoxes.cs
- DataGridViewButtonColumn.cs
- oledbmetadatacolumnnames.cs
- TraceHandler.cs
- SqlCommandBuilder.cs
- QuaternionAnimation.cs
- Enum.cs
- InputLanguageManager.cs
- PathStreamGeometryContext.cs
- AbstractSvcMapFileLoader.cs
- ExpressionBuilderCollection.cs
- DataRecordInternal.cs
- SiteMapDataSource.cs
- Label.cs
- ComponentResourceKeyConverter.cs
- WebPartVerb.cs
- TextDocumentView.cs
- ReferenceService.cs
- NegotiateStream.cs
- ConfigurationLoader.cs
- oledbmetadatacolumnnames.cs
- GeneralEndpointIdentity.cs
- RegexWorker.cs
- ExcCanonicalXml.cs
- RealizationContext.cs
- SqlGatherConsumedAliases.cs
- OleDbErrorCollection.cs
- Substitution.cs
- AdPostCacheSubstitution.cs
- SubMenuStyleCollection.cs
- TimestampInformation.cs
- JsonServiceDocumentSerializer.cs
- PreviewPageInfo.cs
- SpellerError.cs
- DefaultValueTypeConverter.cs
- SqlRemoveConstantOrderBy.cs
- CngKeyCreationParameters.cs
- ClearTypeHintValidation.cs
- OleDbParameter.cs
- XmlKeywords.cs
- ImageSourceValueSerializer.cs
- Vars.cs
- Activity.cs
- ObjectDataSourceView.cs
- PackageRelationshipCollection.cs
- CorrelationTokenTypeConvertor.cs
- COM2ExtendedBrowsingHandler.cs
- InputScopeAttribute.cs
- Line.cs
- StylusPointPropertyId.cs
- TemplatedAdorner.cs
- PasswordRecovery.cs
- SqlDataReader.cs
- MasterPage.cs
- ValidationHelper.cs
- ExtenderControl.cs
- CurrencyWrapper.cs
- InputQueueChannelAcceptor.cs
- AssemblyCollection.cs
- TextEditorSpelling.cs
- ServiceOperationListItemList.cs
- WorkflowMarkupSerializerMapping.cs
- CacheOutputQuery.cs
- StylusOverProperty.cs
- FastPropertyAccessor.cs
- VirtualizedItemProviderWrapper.cs
- PTUtility.cs
- Int32KeyFrameCollection.cs
- UnlockInstanceAsyncResult.cs
- ManifestSignatureInformation.cs
- ItemCollection.cs
- DesignTimeResourceProviderFactoryAttribute.cs
- ValidationSummary.cs
- ToolboxBitmapAttribute.cs
- FrugalList.cs
- JapaneseLunisolarCalendar.cs
- DataGridViewComboBoxEditingControl.cs
- StylusPoint.cs
- PathFigureCollection.cs
- MergePropertyDescriptor.cs
- ScrollContentPresenter.cs
- OleDbPropertySetGuid.cs
- MatrixCamera.cs
- KeyPressEvent.cs
- ErrorWebPart.cs
- Range.cs
- ReaderOutput.cs
- RequestTimeoutManager.cs
- WindowsGraphics2.cs
- ToolBarTray.cs
- UIElement3D.cs
- PrintEvent.cs