Сериализация Custom DataType - PullRequest
0 голосов
/ 12 июня 2019
static void Main(string[] args)
    {
        ObjectEnvelopeType objectenvelopetype = new ObjectEnvelopeType();
        objectenvelopetype.DocumentReference.DocumentID = 345;

        XmlSerializer serializer = new XmlSerializer(typeof(ObjectEnvelopeType));
        FileStream fs = new FileStream("Object.xml", FileMode.Create);
        serializer.Serialize(fs, objectenvelopetype);
        fs.Close();

        Console.ReadKey();
    }
public partial class ObjectEnvelopeType
{
 private ReferenceType documentReferenceField;
 public ReferenceType DocumentReference{get{return this.documentReferenceField;}set{documentReferenceField = value;}}
}

public partial class ReferenceType
{
    private IdentifierType documentIDField;
    public IdentifierType DocumentID{get{return documentIDField;}set{documentIDField = value;}} 
}
public partial class DocumentReferenceType
{
    private IdentifierType idField;
    public IdentifierType ID{get{return this.idField;}set{this.idField = value;}}
}
public partial class IdentifierType 
{
    private string identificationSchemeIDField;
    [System.Xml.Serialization.XmlAttributeAttribute(DataType = "normalizedString")]
    public string identificationSchemeID{get{return this.identificationSchemeIDField;}set{this.identificationSchemeIDField = value;}} 
}

Я теперь преобразую XSD в класс C #, когда я создаю объект класса и присваиваю значение, получаю ошибку

Невозможно неявно преобразовать тип 'int' в 'Frameworkgo.Envelope.IdentifierType

делаю сериализацию, пожалуйста, помогите мне в этом

THANKYOU

1 Ответ

0 голосов
/ 12 июня 2019

Бег и тест 100%.

using System;
using System.IO;
using System.Xml.Serialization;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            ObjectEnvelopeType objectenvelopetype = new ObjectEnvelopeType();
            objectenvelopetype.DocumentReference = new ReferenceType();
            objectenvelopetype.DocumentReference.DocumentID = 345;

            XmlSerializer serializer = new XmlSerializer(typeof(ObjectEnvelopeType));
            FileStream fs = new FileStream("Object.xml", FileMode.Create);
            serializer.Serialize(fs, objectenvelopetype);
            fs.Close();

            Console.ReadKey();
        }
    }

    public partial class ObjectEnvelopeType
    {
        private ReferenceType documentReferenceField;
        public ReferenceType DocumentReference { get { return this.documentReferenceField; } set { documentReferenceField = value; } }
    }

    public partial class ReferenceType
    {
        private int documentIDField;
        public int DocumentID { get { return documentIDField; } set { documentIDField = value; } }
    }
    public partial class DocumentReferenceType
    {
        private IdentifierType idField;
        public IdentifierType ID { get { return this.idField; } set { this.idField = value; } }
    }
    public partial class IdentifierType
    {
        private string identificationSchemeIDField;
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "normalizedString")]
        public string identificationSchemeID { get { return this.identificationSchemeIDField; } set { this.identificationSchemeIDField = value; } }
    }
}
...