Từ 1 tới 5 trên tổng số 5 kết quả

Đề tài: Hỏi về XMLSerializer Check dùm mình lỗi khi sử dụng

  1. #1
    Ngày gia nhập
    02 2009
    Bài viết
    5

    Thumbs down Hỏi về XMLSerializer Check dùm mình lỗi khi sử dụng

    Hi all !
    Mình làm bài tap ve BinaryFormatter va XMLSerialier . Các pro check và huong dan mình sửa lỗi với nhá. ( báo protected j do )
    Thanks

    PHP Code:
    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.IO;
    using System.Runtime.Serialization;
    using System.Runtime.Serialization.Formatters.Binary;
    using System.Xml.Serialization;
    namespace 
    Quan_Ly_Gio_Hang
    {

        class 
    Program
        
    {
            static 
    void Main(string[] args)
            {
                List<
    GIO_HANGgiohang = new List<GIO_HANG>();
                
    giohang.Add(new GIO_HANG("Tivi Sony""21 inch"700000010));
                
    giohang.Add(new GIO_HANG("Tu lanh LG""20 lit"55000008));
                
    giohang.Add(new GIO_HANG("May lanh LG""2 cuc"530000010));
                
    giohang.Add(new GIO_HANG("DVD Samsung""Dau DVD"200000020));

               
                
    FileStream fs = new FileStream("C:/Gio_hang.xml"FileMode.Create);
               
                
    XmlSerializer xs = new XmlSerializer();
                
                
    xs.Serialize(fsgiohang);
                
    fs.Close();
                
    Console.WriteLine("finish");
                
    Console.Read();

                List<
    GIO_HANGgiohang1 = new List<GIO_HANG>();
               
                
    FileStream fs1 = new FileStream("C:/Gio_hang.xml"FileMode.Open);
                
                
    XmlSerializer xs1 = new XmlSerializer();
                
                
    giohang1= (List<GIO_HANG>)xs1.Deserialize(fs1);
                
    fs1.Close();
                
    Console.WriteLine("{0}\t{1}\t\t{2} \t{3}\t{4}""Ten hang hoa""Mo ta""Don gia""So luong""Thanh tien");
                
    Console.WriteLine("{0}\t{1}\t\t{2} \t{3}\t{4}""============""====""=======""========""========");
                for (
    int i 0giohang1.Counti++)
                {
                    
    giohang1[i].Xuat();
                }
                
    Console.ReadLine();
                
    Console.ReadLine();
            }
        }
        [
    Serializable]
        class 
    GIO_HANG
        
    {
            public 
    string Ten_hang;
            public 
    string Mo_ta;
            public 
    double Don_gia;
            public 
    int So_luong;
            public 
    double Thanh_tien;

            
            public 
    GIO_HANG(string pTenhangstring pMotadouble pDongiaint pSoluong)
            {
                
    Ten_hang pTenhang;
                
    Mo_ta pMota;
                
    Don_gia pDongia;
                
    So_luong pSoluong;
                
    Thanh_tien Don_gia So_luong;


            }

            public 
    void Xuat()
            {
                
    Console.WriteLine(" {0} \t{1}\t\t{2} \t{3}\t\t{4}"Ten_hangMo_taDon_giaSo_luongThanh_tien);
            }

        }


    Đã được chỉnh sửa lần cuối bởi dkhoa19869 : 24-03-2009 lúc 09:22 AM.

  2. #2
    Ngày gia nhập
    02 2009
    Bài viết
    5

    Hi mấy pro ui check dùm mình với

  3. #3
    Ngày gia nhập
    10 2007
    Nơi ở
    Gameloft studio
    Bài viết
    175

    Bài làm của b check lỗi rất nhiều.
    Vấn đề này thì FL không hiểu rõ lắm, chỉ biết nói một vài ý thế này:
    - Bạn xem lại constructor của XmlSerializer tại đây
    - Xem thêm lại phương thức Serialize sử dụng như thế nào là phù hợp nhất?

    Vì FL test lại bài của bạn, dù chỉnh sửa thế nào, vẫn báo lỗi chủ yếu là ở hai vấn đề trên (FL sửa vấn đề Constructor thì gặp lỗi tại phương thức Serialize())
    Còn vấn đề bạn nói bạn làm về BinaryFormatter thì bạn xem thêm cái này
    Chịu khó đọc trên MSDN để hiểu rõ hơn, nếu bạn không có tài liệu.
    Đã được chỉnh sửa lần cuối bởi Forlorn_hope : 24-03-2009 lúc 06:48 PM.
    Không biết ghi gì luôn ...

  4. #4
    Ngày gia nhập
    09 2008
    Bài viết
    71

    Mặc định Bạn sai mấy lỗi như sau :

    PHP Code:
    using System.Text;
    using System.IO;
    using System.Runtime.Serialization;
    using System.Runtime.Serialization.Formatters.Soap;

    namespace 
    ConsoleApplication1
    {
        class 
    Program
        
    {
            static 
    void Main(string[] args)
            {
                
    System.Collections.ArrayList giohang =new System.Collections.ArrayList();
                
    giohang.Add(new GIO_HANG("Tivi Sony""21 inch"700000010));
                
    giohang.Add(new GIO_HANG("Tu lanh LG""20 lit"55000008));
                
    giohang.Add(new GIO_HANG("May lanh LG""2 cuc"530000010));
                
    giohang.Add(new GIO_HANG("DVD Samsung""Dau DVD"200000020));

             
                
    GIO_HANG adf = new GIO_HANG("danf""aaa"124442);

                
    System.IO.FileStream fs File.OpenWrite(@"C:\Gio_hang.xml");
                
    SoapFormatter format = new SoapFormatter();
                
    format.Serialize(fsgiohang);
                
    fs.Close();
                
    Console.WriteLine("finish");
                
    Console.Read();

                
    System.IO.FileStream fs1 File.OpenRead(@"C:\Gio_hang.xml");
                
    SoapFormatter format1 = new SoapFormatter();
                
    ArrayList ListObject format1.Deserialize(fs1) as ArrayList;
                
                
    Console.WriteLine("{0}\t{1}\t\t{2} \t{3}\t{4}""Ten hang hoa""Mo ta""Don gia""So luong""Thanh tien");
                 
    Console.WriteLine("{0}\t{1}\t\t{2} \t{3}\t{4}""============""====""=======""========""========");
                 foreach (
    GIO_HANG gioHang in ListObject)
                 {
                     
    gioHang.Xuat();
                 }
                 
    Console.ReadLine(); 

                
    Console.ReadLine(); 
            }
        }

        [
    Serializable]
        class 
    GIO_HANG
        
    {
            public 
    string Ten_hang;
            public 
    string Mo_ta;
            public 
    double Don_gia;
            public 
    int So_luong;
            public 
    double Thanh_tien;


            public 
    GIO_HANG(string pTenhangstring pMotadouble pDongiaint pSoluong)
            {
                
    Ten_hang pTenhang;
                
    Mo_ta pMota;
                
    Don_gia pDongia;
                
    So_luong pSoluong;
                
    Thanh_tien Don_gia So_luong;


            }

            public 
    void Xuat()
            {
                
    Console.WriteLine(" {0} \t{1}\t\t{2} \t{3}\t\t{4}"Ten_hangMo_taDon_giaSo_luongThanh_tien);
            }
        } 

    không dùng using System.Xml.Serialization mà phải dùng using System.Runtime.Serialization.Formatters.Soap <-- cái này phải add references vào
    không sử dụng List<T>() mà phải dùng ArrayList (Vì nó chỉ hỗ trợ Arraylist)
    đường dẫn sai: FileStream fs = new FileStream("C:/Gio_hang.xml", FileMode.Create); không phải dấu "/" mà là "\"
    Đã được chỉnh sửa lần cuối bởi gauto988 : 25-03-2009 lúc 04:23 PM.

  5. #5
    Ngày gia nhập
    02 2009
    Bài viết
    5

    Trích dẫn Nguyên bản được gửi bởi gauto988 Xem bài viết
    PHP Code:
    using System.Text;
    using System.IO;
    using System.Runtime.Serialization;
    using System.Runtime.Serialization.Formatters.Soap;

    namespace 
    ConsoleApplication1
    {
        class 
    Program
        
    {
            static 
    void Main(string[] args)
            {
                
    System.Collections.ArrayList giohang =new System.Collections.ArrayList();
                
    giohang.Add(new GIO_HANG("Tivi Sony""21 inch"700000010));
                
    giohang.Add(new GIO_HANG("Tu lanh LG""20 lit"55000008));
                
    giohang.Add(new GIO_HANG("May lanh LG""2 cuc"530000010));
                
    giohang.Add(new GIO_HANG("DVD Samsung""Dau DVD"200000020));

             
                
    GIO_HANG adf = new GIO_HANG("danf""aaa"124442);

                
    System.IO.FileStream fs File.OpenWrite(@"C:\Gio_hang.xml");
                
    SoapFormatter format = new SoapFormatter();
                
    format.Serialize(fsgiohang);
                
    fs.Close();
                
    Console.WriteLine("finish");
                
    Console.Read();

                
    System.IO.FileStream fs1 File.OpenRead(@"C:\Gio_hang.xml");
                
    SoapFormatter format1 = new SoapFormatter();
                
    ArrayList ListObject format1.Deserialize(fs1) as ArrayList;
                
                
    Console.WriteLine("{0}\t{1}\t\t{2} \t{3}\t{4}""Ten hang hoa""Mo ta""Don gia""So luong""Thanh tien");
                 
    Console.WriteLine("{0}\t{1}\t\t{2} \t{3}\t{4}""============""====""=======""========""========");
                 foreach (
    GIO_HANG gioHang in ListObject)
                 {
                     
    gioHang.Xuat();
                 }
                 
    Console.ReadLine(); 

                
    Console.ReadLine(); 
            }
        }

        [
    Serializable]
        class 
    GIO_HANG
        
    {
            public 
    string Ten_hang;
            public 
    string Mo_ta;
            public 
    double Don_gia;
            public 
    int So_luong;
            public 
    double Thanh_tien;


            public 
    GIO_HANG(string pTenhangstring pMotadouble pDongiaint pSoluong)
            {
                
    Ten_hang pTenhang;
                
    Mo_ta pMota;
                
    Don_gia pDongia;
                
    So_luong pSoluong;
                
    Thanh_tien Don_gia So_luong;


            }

            public 
    void Xuat()
            {
                
    Console.WriteLine(" {0} \t{1}\t\t{2} \t{3}\t\t{4}"Ten_hangMo_taDon_giaSo_luongThanh_tien);
            }
        } 

    không dùng using System.Xml.Serialization mà phải dùng using System.Runtime.Serialization.Formatters.Soap <-- cái này phải add references vào
    không sử dụng List<T>() mà phải dùng ArrayList (Vì nó chỉ hỗ trợ Arraylist)
    đường dẫn sai: FileStream fs = new FileStream("C:/Gio_hang.xml", FileMode.Create); không phải dấu "/" mà là "\"
    Thanks bạn đã góp ý, Mình sẽ check lại !

Các đề tài tương tự

  1. Lập trình C++ Xin check lỗi dùm
    Gửi bởi shockdaica trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 0
    Bài viết cuối: 21-10-2013, 11:52 PM
  2. check lỗi dùm các huynh.Sử dụng using System.Configuration
    Gửi bởi trinhhoa trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 2
    Bài viết cuối: 27-09-2013, 08:16 PM
  3. Check dùm cách gọi hàm operator này với
    Gửi bởi quicksilver89 trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 3
    Bài viết cuối: 17-10-2009, 02:19 PM
  4. Hàm sắp xếp trog link list, check dùm mình hàm này với?
    Gửi bởi quicksilver89 trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 2
    Bài viết cuối: 19-04-2009, 11:19 AM
  5. check dùm mình hàm demsach với
    Gửi bởi quicksilver89 trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 4
    Bài viết cuối: 18-03-2009, 10:15 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn