SchemaReference::Schema Property

 

Gets an XmlSchema object representing the XSD schema.

Namespace:   System.Web.Services.Discovery
Assembly:  System.Web.Services (in System.Web.Services.dll)

public:
property XmlSchema^ Schema {
	XmlSchema^ get();
}

Property Value

Type: System.Xml.Schema::XmlSchema^

An XmlSchema object representing the XSD schema.

Exception Condition
InvalidOperationException

ClientProtocol property is null.

-or-

An error occurred during the download or resolution of the XSD schema using ClientProtocol.

If the XSD schema has not been downloaded and added to the Documents property of ClientProtocol, an attempt to download and resolve the document is made.

// Reference the schema document.
String^ myStringUrl = "c:\\Inetpub\\wwwroot\\dataservice.xsd";
XmlSchema^ myXmlSchema;

// Create the client protocol.
DiscoveryClientProtocol^ myDiscoveryClientProtocol = gcnew DiscoveryClientProtocol;
myDiscoveryClientProtocol->Credentials = CredentialCache::DefaultCredentials;

//  Create a schema reference.
SchemaReference^ mySchemaReferenceNoParam = gcnew SchemaReference;
SchemaReference^ mySchemaReference = gcnew SchemaReference( myStringUrl );

// Set the client protocol.
mySchemaReference->ClientProtocol = myDiscoveryClientProtocol;

// Access the default file name associated with the schema reference.
Console::WriteLine( "Default filename is : {0}", mySchemaReference->DefaultFilename );

// Access the namespace associated with schema reference class.
Console::WriteLine( "Namespace is : {0}", SchemaReference::Namespace );
FileStream^ myStream = gcnew FileStream( myStringUrl,FileMode::OpenOrCreate );

// Read the document in a stream.
mySchemaReference->ReadDocument( myStream );

// Get the schema of referenced document.
myXmlSchema = mySchemaReference->Schema;
Console::WriteLine( "Reference is : {0}", mySchemaReference->Ref );
Console::WriteLine( "Target namespace (default empty) is : {0}", mySchemaReference->TargetNamespace );
Console::WriteLine( "URL is : {0}", mySchemaReference->Url );

// Write the document in the stream.
mySchemaReference->WriteDocument( myXmlSchema, myStream );
myStream->Close();
mySchemaReference = nullptr;

.NET Framework
Available since 1.1
Return to top
Show: