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
- SmtpSpecifiedPickupDirectoryElement.cs
- CookielessHelper.cs
- IndicFontClient.cs
- ScrollItemProviderWrapper.cs
- DataGridViewCellContextMenuStripNeededEventArgs.cs
- FieldAccessException.cs
- MemberRestriction.cs
- BaseCodeDomTreeGenerator.cs
- XsdDataContractExporter.cs
- TemplateBindingExtension.cs
- EmptyEnumerator.cs
- UrlAuthorizationModule.cs
- SqlCacheDependencyDatabaseCollection.cs
- StylusPointProperty.cs
- StopStoryboard.cs
- DeclaredTypeElement.cs
- ScalarRestriction.cs
- QueryRelOp.cs
- IsolationInterop.cs
- HyperLinkStyle.cs
- DataGridRelationshipRow.cs
- DataBindingHandlerAttribute.cs
- GraphicsPathIterator.cs
- SQLGuidStorage.cs
- webeventbuffer.cs
- EditorAttribute.cs
- _LazyAsyncResult.cs
- OutputCacheSection.cs
- SelectedCellsCollection.cs
- QilExpression.cs
- SqlClientWrapperSmiStream.cs
- GenericWebPart.cs
- DataGridColumn.cs
- ECDsaCng.cs
- DataGridViewCellStyleChangedEventArgs.cs
- TypographyProperties.cs
- FormViewCommandEventArgs.cs
- CheckBoxRenderer.cs
- Cursor.cs
- DesignerSerializationVisibilityAttribute.cs
- ClientOptions.cs
- SafeFileMapViewHandle.cs
- coordinatorfactory.cs
- CollectionViewGroupInternal.cs
- SessionStateModule.cs
- TreeSet.cs
- InputLanguageManager.cs
- DbProviderFactories.cs
- TableColumn.cs
- SchemaHelper.cs
- ListViewInsertionMark.cs
- MappingSource.cs
- COAUTHINFO.cs
- WhitespaceRuleLookup.cs
- RtfControls.cs
- EqualityComparer.cs
- httpapplicationstate.cs
- TextStore.cs
- MailMessage.cs
- CacheMode.cs
- SafeNativeMethods.cs
- Crc32.cs
- ValidationSummary.cs
- SerializationEventsCache.cs
- ParserOptions.cs
- ListDictionaryInternal.cs
- StreamResourceInfo.cs
- EmptyStringExpandableObjectConverter.cs
- VoiceSynthesis.cs
- AuditLogLocation.cs
- SqlNodeTypeOperators.cs
- PathSegmentCollection.cs
- DiagnosticTraceSource.cs
- DrawListViewColumnHeaderEventArgs.cs
- DocumentViewerAutomationPeer.cs
- DataViewManager.cs
- OleDbStruct.cs
- dataprotectionpermissionattribute.cs
- ValueChangedEventManager.cs
- SamlConstants.cs
- RelatedCurrencyManager.cs
- StrokeNodeEnumerator.cs
- DataSvcMapFileSerializer.cs
- ProcessHostMapPath.cs
- XmlDictionary.cs
- RightsManagementInformation.cs
- DelegatingStream.cs
- EdmComplexPropertyAttribute.cs
- SQLMoneyStorage.cs
- ProbeMatches11.cs
- CmsInterop.cs
- StreamAsIStream.cs
- LineBreak.cs
- AuthenticationConfig.cs
- ObservableCollection.cs
- FixedSOMLineCollection.cs
- TextEditorCharacters.cs
- MultiPageTextView.cs
- QuaternionConverter.cs
- MobileCategoryAttribute.cs