Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Xml / System / Xml / XmlResolver.cs / 1305376 / XmlResolver.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Xml { using System; using System.IO; using System.Text; using System.Security; using System.Security.Permissions; #if !SILVERLIGHT using System.Net; #endif using System.Runtime.Versioning; ////// /// public abstract class XmlResolver { ///Resolves external XML resources named by a Uniform /// Resource Identifier (URI). This class is ////// . /// /// public abstract Object GetEntity(Uri absoluteUri, string role, Type ofObjectToReturn); ///Maps a /// URI to an Object containing the actual resource. ////// /// #if !SILVERLIGHT [ResourceExposure(ResourceScope.Machine)] [ResourceConsumption(ResourceScope.Machine)] #endif public virtual Uri ResolveUri(Uri baseUri, string relativeUri) { if ( baseUri == null || ( !baseUri.IsAbsoluteUri && baseUri.OriginalString.Length == 0 ) ) { Uri uri = new Uri( relativeUri, UriKind.RelativeOrAbsolute ); #if !SILVERLIGHT // Path.GetFullPath is SecurityCritical if ( !uri.IsAbsoluteUri && uri.OriginalString.Length > 0 ) { uri = new Uri( Path.GetFullPath( relativeUri ) ); } #endif return uri; } else { if (relativeUri == null || relativeUri.Length == 0) { return baseUri; } // relative base Uri if ( !baseUri.IsAbsoluteUri ) { #if SILVERLIGHT // create temporary base for the relative URIs Uri tmpBaseUri = new Uri("tmp:///"); // create absolute base URI with the temporary base Uri absBaseUri = new Uri(tmpBaseUri, baseUri.OriginalString); // resolve the relative Uri into a new absolute URI Uri resolvedAbsUri = new Uri(absBaseUri, relativeUri); // make it relative by removing temporary base Uri resolvedRelUri = tmpBaseUri.MakeRelativeUri(resolvedAbsUri); return resolvedRelUri; #else throw new NotSupportedException(Res.GetString(Res.Xml_RelativeUriNotSupported)); #endif } return new Uri( baseUri, relativeUri ); } } #if !SILVERLIGHT //UE attension ///[To be supplied.] ////// /// public abstract ICredentials Credentials { set; } #endif public virtual bool SupportsType(Uri absoluteUri, Type type) { if (absoluteUri == null) { throw new ArgumentNullException("absoluteUri"); } if (type == null || type == typeof(Stream)) { return true; } return false; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.[To be supplied.] ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- XPathExpr.cs
- CollectionChangeEventArgs.cs
- PropertyGrid.cs
- ProfilePropertySettingsCollection.cs
- XmlComment.cs
- IdnMapping.cs
- ParamArrayAttribute.cs
- WebPartDescriptionCollection.cs
- RecommendedAsConfigurableAttribute.cs
- SQLDecimal.cs
- MergablePropertyAttribute.cs
- TypeDescriptionProviderAttribute.cs
- AppDomainAttributes.cs
- GlyphingCache.cs
- DiscoveryInnerClientAdhoc11.cs
- QueryContinueDragEvent.cs
- EncoderBestFitFallback.cs
- FrugalMap.cs
- EntityCommandExecutionException.cs
- ColorConvertedBitmap.cs
- StrokeIntersection.cs
- UidPropertyAttribute.cs
- PauseStoryboard.cs
- FrameDimension.cs
- filewebrequest.cs
- Knowncolors.cs
- DataPagerField.cs
- BitmapDownload.cs
- CodeRemoveEventStatement.cs
- Config.cs
- JournalEntry.cs
- SqlUserDefinedAggregateAttribute.cs
- SmiGettersStream.cs
- Literal.cs
- TraceLevelStore.cs
- DataBoundControlDesigner.cs
- EventWaitHandleSecurity.cs
- GrabHandleGlyph.cs
- Help.cs
- WebControlToolBoxItem.cs
- ThreadExceptionEvent.cs
- EditingCommands.cs
- DbConnectionInternal.cs
- SqlHelper.cs
- ProjectedWrapper.cs
- TextEditorCharacters.cs
- WebPartZoneCollection.cs
- objectquery_tresulttype.cs
- VisualCollection.cs
- TargetPerspective.cs
- TypeListConverter.cs
- TextParagraph.cs
- RadioButtonRenderer.cs
- AtomEntry.cs
- DbConnectionPool.cs
- GetParentChain.cs
- VectorCollectionConverter.cs
- ModelItemKeyValuePair.cs
- TextViewBase.cs
- SimplePropertyEntry.cs
- GetWinFXPath.cs
- CellParagraph.cs
- ReadOnlyActivityGlyph.cs
- StickyNote.cs
- XmlJsonWriter.cs
- WebBrowserEvent.cs
- PartialCachingControl.cs
- Queue.cs
- DataGridViewCellErrorTextNeededEventArgs.cs
- DataGridRow.cs
- OrthographicCamera.cs
- XmlSchemaExternal.cs
- DesignerForm.cs
- TreeViewAutomationPeer.cs
- OleDbErrorCollection.cs
- DomNameTable.cs
- GenericWebPart.cs
- FacetChecker.cs
- TextBoxView.cs
- OracleParameter.cs
- ImplicitInputBrush.cs
- XmlObjectSerializer.cs
- Metafile.cs
- AsymmetricSignatureDeformatter.cs
- SafeMemoryMappedFileHandle.cs
- Emitter.cs
- LinkDescriptor.cs
- XmlWriter.cs
- FormViewDeleteEventArgs.cs
- XmlAttributeOverrides.cs
- EntityParameter.cs
- MsmqIntegrationInputChannel.cs
- COM2IDispatchConverter.cs
- SchemaObjectWriter.cs
- SoapSchemaImporter.cs
- PropertyGeneratedEventArgs.cs
- PersonalizationAdministration.cs
- NameTable.cs
- AlternateView.cs
- CookieProtection.cs