Code:
/ DotNET / DotNET / 8.0 / untmp / Orcas / RTM / ndp / fx / src / xsp / System / Web / Extensions / Compilation / WCFModel / ExternalFile.cs / 1 / ExternalFile.cs
//------------------------------------------------------------------------------ //// Copyright (C) Microsoft Corporation. All Rights Reserved. // //----------------------------------------------------------------------------- // // This code is shared between ndp\fx\src\xsp\System\Web\Extensions\Compilation\WCFModel // and wizard\vsdesigner\designer\microsoft\vsdesigner\WCFModel. // Please make sure the code files between those two directories are alway in sync when you make any changes to this code. // And always test these code in both places before check in. // The code under ndp\fx\src\xsp\System\Web\Extensions\Compilation\XmlSerializer might have to be regerenated when // the format of the svcmap file is changed, or class structure has been changed in this directory. Please follow the HowTo file // under Compilation directory to see how to regerenate that code. // using System; using System.Collections; using System.Diagnostics; using System.Globalization; using System.IO; #if WEB_EXTENSIONS_CODE using System.Web.Resources; #else using Microsoft.VSDesigner.Resources.Microsoft.VSDesigner; #endif using XmlSerialization = System.Xml.Serialization; #if WEB_EXTENSIONS_CODE namespace System.Web.Compilation.WCFModel #else namespace Microsoft.VSDesigner.WCFModel #endif { ////// This class presents a single file referenced by a svcmap file /// ///#if WEB_EXTENSIONS_CODE internal class ExternalFile #else [CLSCompliant(true)] public class ExternalFile #endif { // File Name private string m_FileName; // Is the MeatadataFile loaded from the file? If it is false, we need create a new file when we save to the disket private bool m_IsExistingFile; // error happens when the file is loaded private Exception m_ErrorInLoading; /// /// Constructor /// ///Must support a default construct for XmlSerializer public ExternalFile() { m_FileName = String.Empty; } ////// Constructor /// /// File Name public ExternalFile(string fileName) { this.FileName = fileName; } ////// Error happens when the file is loaded /// ////// [XmlSerialization.XmlIgnore()] public Exception ErrorInLoading { get { return m_ErrorInLoading; } set { m_ErrorInLoading = value; } } /// /// FileName in the storage /// ////// [XmlSerialization.XmlAttribute()] public string FileName { get { return m_FileName; } set { if (value == null) { throw new ArgumentNullException("value"); } if (!IsLocalFileName(value)) { throw new NotSupportedException(String.Format(CultureInfo.CurrentCulture, WCFModelStrings.ReferenceGroup_InvalidFileName, value)); } m_FileName = value; } } /// /// Is the item loaded from the file? If it is false, we need create a new file when we save to the disket /// ////// [XmlSerialization.XmlIgnore()] public bool IsExistingFile { get { return m_IsExistingFile; } set { m_IsExistingFile = value; } } /// /// Check the file name is a real file name but not a path /// /// ///public static bool IsLocalFileName(string fileName) { if (fileName == null) { throw new ArgumentNullException("fileName"); } if (fileName.IndexOfAny(Path.GetInvalidFileNameChars()) >= 0 || fileName.IndexOfAny(new Char[] { Path.DirectorySeparatorChar, Path.AltDirectorySeparatorChar, Path.VolumeSeparatorChar }) >= 0) { return false; } return true; } } } // 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
- CryptoKeySecurity.cs
- MexNamedPipeBindingCollectionElement.cs
- infer.cs
- CustomAttributeBuilder.cs
- Label.cs
- WindowsComboBox.cs
- ElementAction.cs
- FontUnitConverter.cs
- EventLogEntry.cs
- StatusBar.cs
- LessThanOrEqual.cs
- KeyTime.cs
- ZipFileInfo.cs
- AdornerHitTestResult.cs
- XmlnsDictionary.cs
- OleDbStruct.cs
- PolyQuadraticBezierSegment.cs
- LayoutEngine.cs
- Table.cs
- WindowCollection.cs
- GregorianCalendar.cs
- Visual3DCollection.cs
- TypedTableBase.cs
- MsmqIntegrationSecurityMode.cs
- SoapInteropTypes.cs
- StylusCollection.cs
- RecordManager.cs
- FontEmbeddingManager.cs
- MergeFilterQuery.cs
- DesignTimeVisibleAttribute.cs
- GlobalizationAssembly.cs
- WriteLine.cs
- BooleanExpr.cs
- DataGridBoundColumn.cs
- Collection.cs
- GeometryDrawing.cs
- PropertyMapper.cs
- WindowsUserNameCachingSecurityTokenAuthenticator.cs
- MatchingStyle.cs
- VerticalAlignConverter.cs
- XsltContext.cs
- IconEditor.cs
- ServiceChannelFactory.cs
- DataGridViewAutoSizeColumnModeEventArgs.cs
- RectangleHotSpot.cs
- GridViewColumnHeaderAutomationPeer.cs
- ServiceOperationParameter.cs
- XDeferredAxisSource.cs
- BitSet.cs
- CodeBlockBuilder.cs
- HtmlGenericControl.cs
- ToolBarButtonDesigner.cs
- UserUseLicenseDictionaryLoader.cs
- PropertyGrid.cs
- GorillaCodec.cs
- PolicyLevel.cs
- DeferredTextReference.cs
- XhtmlBasicObjectListAdapter.cs
- FloaterBaseParagraph.cs
- QilReplaceVisitor.cs
- SendKeys.cs
- LineGeometry.cs
- GenericUriParser.cs
- SqlDataSourceCommandEventArgs.cs
- NameTable.cs
- PersonalizableTypeEntry.cs
- ManualResetEvent.cs
- ping.cs
- IIS7WorkerRequest.cs
- SplashScreenNativeMethods.cs
- HandleCollector.cs
- ProcessHostMapPath.cs
- CodeTypeParameterCollection.cs
- BitmapImage.cs
- DefaultMemberAttribute.cs
- DetailsViewInsertEventArgs.cs
- ConstrainedDataObject.cs
- Property.cs
- WSSecurityPolicy.cs
- PointCollection.cs
- PipelineDeploymentState.cs
- ThicknessAnimationUsingKeyFrames.cs
- SecurityTokenRequirement.cs
- PassportIdentity.cs
- NamespaceEmitter.cs
- EditCommandColumn.cs
- Operand.cs
- ZipIOCentralDirectoryDigitalSignature.cs
- GregorianCalendar.cs
- PagedControl.cs
- ProcessHost.cs
- IdleTimeoutMonitor.cs
- LocatorBase.cs
- LifetimeServices.cs
- CollectionBuilder.cs
- ControlPersister.cs
- IconBitmapDecoder.cs
- TextSchema.cs
- Path.cs
- WebPartConnectionsCloseVerb.cs