zoukankan      html  css  js  c++  java
  • List<T>保存为XML文件

    今天我们学习怎样把List<T>写成一个XML文件保存起来。因为我们在做动态网站开发时,需要对一些不太常变化的数据产生为XML文件,让程序直接去读取,而不是每次是SQL数据库取。

    为了解决一个问题,我们得需先创建一个自定义的Result()在ASP.NET MVC中。这个Result操作可以继承ActionResult或者ContentResult。

    代码:

     class XmlResult<T> : ActionResult
        {
            public T Data { private get; set; }
            public string FilePhysicalPath { private get; set; }
    
            public override void ExecuteResult(ControllerContext context)
            {
                XmlSerializer xml = new XmlSerializer(typeof(T));
    
                using (StreamWriter writer = new StreamWriter(FilePhysicalPath))
                {
                    xml.Serialize(writer, Data);
                }
            }
        }
    View Code


    创建Model:

    创建一个Entity,是数据的集合:

    code source:

     public class NumberEntity
        {
            public List<Number> Numbers()
            {
                return new List<Number>(){
                    new Number() { Num = 20 },
                    new Number() { Num = 40 },
                    new Number() { Num = 60 },
                    new Number() { Num = 80 }
                };
            }
        }
    View Code


    接下来,创建控制器


    code source:

     public ActionResult XmlDemo()
            {
                return View();
            }
    
            public ActionResult ConvertListSaveFile()
            {
                NumberEntity ne = new NumberEntity();
    
                string fileName = Guid.NewGuid().ToString() + ".xml";
                string filephysicalPath = Server.MapPath("~/Temp/") + fileName;
    
                return new XmlResult<List<Number>>()
                {
                    Data = ne.Numbers(),
                    FilePhysicalPath = filephysicalPath
                };
            }
    View Code


    完成视图,简单:


     效果演示:


     

  • 相关阅读:
    51nod 1127 最短的包含字符串
    hdu 2197 本原串
    hdu 2160 母猪的故事
    hdu 2594 Simpsons’ Hidden Talents
    自旋锁原理及java自旋锁
    Java中CAS详解
    dump相关
    多线程设置线程超时思路
    kafka遗忘点
    Java 和 HTTP 的那些事(四) HTTPS 和 证书(转)
  • 原文地址:https://www.cnblogs.com/insus/p/4612685.html
Copyright © 2011-2022 走看看