نمایش نتایج 1 تا 2 از 2

نام تاپیک: serialize & deserialize

  1. #1

    serialize & deserialize

    سلام
    من کد serialize و نوشتم در قسمت سرویسم object های فرم میگیره و serialize می کنه ولی وقتی میخوام deserialize کنم پیغام خطای There is an error in XML doc(2,2) میده نمی دونم چرا؟ اینم کداش
    public static string SerializeObject(object obj)
    {
    string xml = "";
    XmlSerializer serializer = new XmlSerializer(obj.GetType());
    MemoryStream ms = new MemoryStream();
    serializer.Serialize(ms, obj);
    xml = Encoding.UTF8.GetString(ms.ToArray());
    ms.Dispose();

    return xml;
    }



    private object DeSerializeAnObject(string xmlOfAnObject)
    {
    object objXML = new object();
    System.IO.StringReader read = new StringReader(xmlOfAnObject);

    System.Xml.Serialization.XmlSerializer serializer = new
    System.Xml.Serialization.XmlSerializer(xmlOfAnObje ct.GetType());

    System.Xml.XmlReader reader = new XmlTextReader(read);

    try
    {

    objXML =(object) serializer.Deserialize(reader); //to
    in khat error migire!

    return objXML;

    }

    catch
    {

    throw;

    }

    finally
    {

    reader.Close();

    read.Close();

    read.Dispose();

    }

    }

  2. #2
    VIP آواتار gwbasic
    تاریخ عضویت
    اردیبهشت 1403
    محل زندگی
    تهران
    سن
    42
    پست
    982

    نقل قول: serialize & deserialize

    اگر debug می کردید مشکلتون براحتی پیدا می شد.
    در متدی که برای سریالایز نوشتید یعنی (SerializeObject) یک type رو سریال می کنید و در نهایت یک string برمی گردانید مثلا Person رو به string البته سریال شده بر می گردانید
    حالا وقتی این string که در اصل یک Person سریال شده است رو می خواهید دی سریال کنید باید همین type را برای عمل Deserialize مشخص کنید بنایراین باید این تغییر را در متد (DeSerializeAnObject) بدهید:

    System.Xml.Serialization.XmlSerializer(typeof(Person));


    کد زیر هم برای نمونه می تونید استفاده کنید که Type در اینجا List<string< هست
    فایل های ضمیمه فایل های ضمیمه

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •