分类:
.NET MVC
在.net mvc中,想要进行读取xml的操作需要以下步骤:
Xml用途:配置、传输、储存。
1,先要导入命名空间:如下图:
2,我们需要创建生成一个Xml文件,先在试图下创建一个Xml的文件夹来生成文件,代码如下:
public ActionResult Index() { XElement root = new XElement("configuration"); XElement bookarray = new XElement("books"); root.Add(bookarray); //生成一个Xml文件 root.Save(Server.MapPath("~/Views/Xml/book.xml")); return View(); }
3,我们需要给xml文件添加数据,以作显示读取之用.
一,封装一个添加数据的方法
public void addbook(XElement bookarray, string _bsid, string _bookName, string _bookDesc) { XElement book = new XElement("book"); book.SetAttributeValue("bsid", _bsid); XElement bookName = new XElement("bookName"); bookName.Value = _bookName; book.Add(bookName); XElement bookDesc = new XElement("bookDesc"); bookDesc.Value = _bookDesc; book.Add(bookDesc); bookarray.Add(book); }
二,在创建的xml文件里添加数据,代码如下:
public ActionResult Index() { XElement root = new XElement("configuration"); XElement bookarray = new XElement("books"); root.Add(bookarray); addbook(bookarray, "ba001", "侠盗飞车", "专偷车的故事"); addbook(bookarray, "ba002", "盗墓笔记", "专盗墓的故事"); addbook(bookarray, "ba003", "天才枪手", "专偷东西的故事"); //生成一个Xml文件 root.Save(Server.MapPath("~/Views/Xml/book.xml")); return View(); }
可以在创建的Xml文件夹里查看生成的数据,如下
4,最后一步就是读取操作了,代码如下: //在xml进行读取操作 public ActionResult Read() { //读取配置的Web.config文件 //XElement config = XElement.Load(Server.MapPath("~/Web.config")); //string conn = config.Element("connectionStrings").Element("add").Attribute("connectionString").Value; //加载xml XElement root = XElement.Load(Server.MapPath("~/Views/Xml/book.xml")); List<string> bookNamelist = new List<string>(); //Element:子集元素 List<string> bookidlist = new List<string>(); //Element:子集元素 foreach (var item in root.Element("books").Elements("book")) { string bookName = item.Element("bookName").Value; //string bookDesc = item.Element("bookDesc").Value; bookNamelist.Add(bookName); bookidlist.Add(item.Attribute("bsid").Value); } ViewBag.bookidlist = bookidlist; return View(bookNamelist); }
5,为了完善效果,我们还可以在显示目录的同时点击显示详情,所以需要封装一个详情方法
//封装详情的方法 public void BookDetails(string bsid) { //加载xml XElement root = XElement.Load(Server.MapPath("~/Views/Xml/book.xml")); XElement book = root.Element("books").Elements("book").Where(a => a.Attribute("bsid").Value == bsid).FirstOrDefault(); Response.Write("编号:" + bsid +"<br/>"); Response.Write("书名:" + book.Element("bookName").Value + "<br/>"); Response.Write("描述:" + book.Element("bookDesc").Value + "<br/>"); }
试图绑定数据代码如下:
@{ ViewBag.Title = "Read"; } @model List<string> @{ List<string> idNameList = ViewBag.bookidlist as List<string>; } <div style="margin-top:30px;"> <ul style="list-style-type:none;font-size:25px;"> @for (int i = 0; i < idNameList.Count; i++) { <li style="float:left;margin-left:15px;"><a href="/xml/BookDetails?bsid=@idNameList[i]">@Model[i]</a></li> } </ul> </div>
点击效果如下:
好了,对于Xml的创建,读取操作就到这里啦,喜欢的朋友可以收藏哦.
评价
排名
6
文章
6
粉丝
16
评论
8
{{item.articleTitle}}
{{item.blogName}} : {{item.content}}
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2024TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术