Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ SerializeAndVerifyType()

void System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeAndVerifyType ( DataContract dataContract,
XmlWriterDelegator xmlWriter,
object obj,
bool verifyKnownType,
RuntimeTypeHandle declaredTypeHandle,
Type declaredType )
inlineprotectedinherited

Definition at line 241 of file XmlObjectSerializerWriteContext.cs.

242 {
243 bool flag = false;
244 if (dataContract.KnownDataContracts != null)
245 {
246 scopedKnownTypes.Push(dataContract.KnownDataContracts);
247 flag = true;
248 }
250 {
251 DataContract dataContract2 = ResolveDataContractFromKnownTypes(dataContract.StableName.Name, dataContract.StableName.Namespace, null, declaredType);
252 if (dataContract2 == null || dataContract2.UnderlyingType != dataContract.UnderlyingType)
253 {
254 throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(XmlObjectSerializer.CreateSerializationException(System.SR.Format(System.SR.DcTypeNotFoundOnSerialize, DataContract.GetClrTypeFullName(dataContract.UnderlyingType), dataContract.StableName.Name, dataContract.StableName.Namespace)));
255 }
256 }
258 if (flag)
259 {
261 }
262 }
bool IsKnownType(DataContract dataContract, Dictionary< XmlQualifiedName, DataContract > knownDataContracts, Type declaredType)
DataContract ResolveDataContractFromKnownTypes(XmlQualifiedName typeName)
virtual void WriteDataContractValue(DataContract dataContract, XmlWriterDelegator xmlWriter, object obj, RuntimeTypeHandle declaredTypeHandle)
static string Format(string resourceFormat, object p1)
Definition SR.cs:118
static string DcTypeNotFoundOnSerialize
Definition SR.cs:66
Definition SR.cs:7
void Push(Dictionary< XmlQualifiedName, DataContract > dataContractDictionary)

References System.Runtime.Serialization.XmlObjectSerializer.CreateSerializationException(), System.SR.DcTypeNotFoundOnSerialize, System.SR.Format(), System.Runtime.Serialization.DataContract.GetClrTypeFullName(), System.Runtime.Serialization.XmlObjectSerializerContext.IsKnownType(), System.obj, System.Runtime.Serialization.ScopedKnownTypes.Pop(), System.Runtime.Serialization.ScopedKnownTypes.Push(), System.Runtime.Serialization.XmlObjectSerializerContext.ResolveDataContractFromKnownTypes(), System.Runtime.Serialization.XmlObjectSerializerContext.scopedKnownTypes, System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(), and System.Runtime.Serialization.XmlObjectSerializerWriteContext.WriteDataContractValue().

Referenced by System.Runtime.Serialization.Json.XmlObjectSerializerWriteContextComplexJson.SerializeWithXsiType(), System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithXsiType(), System.Runtime.Serialization.Json.XmlObjectSerializerWriteContextComplexJson.SerializeWithXsiTypeAtTopLevel(), and System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithXsiTypeAtTopLevel().