IDataContractSurrogate.GetReferencedTypeOnImport Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt während des Schemaimports den Typ zurück, auf den das Schema verweist.
public:
Type ^ GetReferencedTypeOnImport(System::String ^ typeName, System::String ^ typeNamespace, System::Object ^ customData);
public Type GetReferencedTypeOnImport (string typeName, string typeNamespace, object customData);
abstract member GetReferencedTypeOnImport : string * string * obj -> Type
Public Function GetReferencedTypeOnImport (typeName As String, typeNamespace As String, customData As Object) As Type
Parameter
- typeName
- String
Der Typname in Schema.
- typeNamespace
- String
Der Typnamespace in Schema.
- customData
- Object
Das Objekt, das die in die XML-Schemadefinition eingefügte Anmerkung darstellt, d. h. diese Daten können zum Suchen des Typs, auf den verwiesen wird, verwendet werden.
Gibt zurück
Der Type, der für den Typ, auf den verwiesen wird, verwendet werden soll.
Beispiele
Im folgenden Beispiel wird eine Implementierung der GetReferencedTypeOnImport-Methode veranschaulicht.
public Type GetReferencedTypeOnImport(string typeName,
string typeNamespace, object customData)
{
Console.WriteLine("GetReferencedTypeOnImport invoked");
// This method is called on schema import.
// If a PersonSurrogated data contract is
// in the specified namespace, do not create a new type for it
// because there is already an existing type, "Person".
Console.WriteLine( "\t Type Name: {0}", typeName);
if (typeName.Equals("PersonSurrogated") )
{
Console.WriteLine("Returning Person");
return typeof(Person);
}
return null;
}
Public Function GetReferencedTypeOnImport(ByVal typeName As String, _
ByVal typeNamespace As String, ByVal customData As Object) As Type _
Implements IDataContractSurrogate.GetReferencedTypeOnImport
Console.WriteLine("GetReferencedTypeOnImport invoked")
' This method is called on schema import.
' If a PersonSurrogated data contract is
' in the specified namespace, do not create a new type for it
' because there is already an existing type, "Person".
Console.WriteLine(vbTab & "Type Name: {0}", typeName)
'If typeNamespace.Equals("http://schemas.datacontract.org/2004/07/DCSurrogateSample") Then
If typeName.Equals("PersonSurrogated") Then
Console.WriteLine("Returning Person")
Return GetType(Person)
End If
'End If
Return Nothing
End Function
Hinweise
Null
soll zurückgegeben werden, wenn kein CLR-Typ zur Darstellung des Schematyps vorhanden ist. Dadurch wird beim Schemaimport ein neuer Typ generiert.