LINQ 从数据库读数据生成 XML-阿里云开发者社区

开发者社区> iwilsonwu> 正文

LINQ 从数据库读数据生成 XML

简介: 本实例是一个从数据库里读出来省份,城市,地区的数据生成3个XML文件. 首先创建一个Linq to SQL的类, 然后将省份,城市,地区的表拖入类中: 然后新建一个类,加入代码如下:         public void ResetProvinces(string path)       ...
+关注继续查看

本实例是一个从数据库里读出来省份,城市,地区的数据生成3个XML文件.

首先创建一个Linq to SQL的类, 然后将省份,城市,地区的表拖入类中:


然后新建一个类,加入代码如下:


        
public void ResetProvinces(string path)
        
{
            XElement xmlProvinces 
= new XElement("Provinces");

            
foreach (S_Province province in DB.S_Provinces)
            
{
                xmlProvinces.Add(
                    
new XElement("Province", province.ProvinceName.ToString(),
                                 
new XAttribute("ID", province.ProvinceID.ToString()),
                                 
new XAttribute("ProvinceName", province.ProvinceName.ToString())
                        )
                    );
            }


            xmlProvinces.Save(@path);
        }


        
public void ResetCities(string path)
        
{
            XElement xmlCities 
= new XElement("Cities");

            
foreach (S_City city in DB.S_Cities)
            
{
                xmlCities.Add(
                    
new XElement("City", city.CityName.ToString(),
                                 
new XAttribute("ID", city.CityID.ToString()),
                                 
new XAttribute("CityName", city.CityName.ToString()),
                                 
new XAttribute("PID", city.ProvinceID.ToString()),
                                 
new XAttribute("ZipCode", city.ZipCode.ToString())
                        )
                    );
            }


            xmlCities.Save(@path);
        }


        
public void ResetDistract(string path)
        
{
            XElement xmlDistricts 
=new XElement("Districts");

            
foreach (S_District district in DB.S_Districts)
            
{
                xmlDistricts.Add(
                    
new XElement("District", district.DistrictName.ToString(),
                                 
new XAttribute("ID", district.DistrictID.ToString()),
                                 
new XAttribute("DistrictName", district.DistrictName.ToString()),
                                 
new XAttribute("CID", district.CityID.ToString())
                        )
                    );
            }


            xmlDistricts.Save(@path);
        }

最后执行过代码后可以看到XML效果:

(以城市为例)

<?xml version="1.0" encoding="utf-8"?>
<Cities>
    
<City ID="1" PID="1" ZipCode="100000">北京市</City>
    
<City ID="2" PID="2" ZipCode="100000">天津市</City>
    
<City ID="3" PID="3" ZipCode="050000">石家庄市</City>
    
<City ID="4" PID="3" ZipCode="063000">唐山市</City>
    
<City ID="5" PID="3" ZipCode="066000">秦皇岛市</City>
    
<City ID="6" PID="3" ZipCode="056000">邯郸市</City>
    
<City ID="7" PID="3" ZipCode="054000">邢台市</City>
    
<City ID="8" PID="3" ZipCode="071000">保定市</City>
    
<City ID="9" PID="3" ZipCode="075000">张家口市</City>
    
<City ID="10" PID="3" ZipCode="067000">承德市</City>
    
<City ID="11" PID="3" ZipCode="061000">沧州市</City>
    
<City ID="12" PID="3" ZipCode="065000">廊坊市</City>
    
<City ID="13" PID="3" ZipCode="053000">衡水市</City>
    
<City ID="14" PID="4" ZipCode="030000">太原市</City>
    
<City ID="15" PID="4" ZipCode="037000">大同市</City>
    
<City ID="16" PID="4" ZipCode="045000">阳泉市</City>
    
<City ID="17" PID="4" ZipCode="046000">长治市</City>
    
<City ID="18" PID="4" ZipCode="048000">晋城市</City>
    
<City ID="19" PID="4" ZipCode="036000">朔州市</City>
    
<City ID="20" PID="4" ZipCode="030600">晋中市</City>
    
<City ID="21" PID="4" ZipCode="044000">运城市</City>
    
<City ID="22" PID="4" ZipCode="034000">忻州市</City>
    
<City ID="23" PID="4" ZipCode="041000">临汾市</City>
    
<City ID="24" PID="4" ZipCode="030500">吕梁市</City>
    
<City ID="25" PID="5" ZipCode="010000">呼和浩特市</City>
    
<City ID="26" PID="5" ZipCode="014000">包头市</City>
    
<City ID="27" PID="5" ZipCode="016000">乌海市</City>
</Cities>

开博第一帖,虽然代码不算什么经典,也借此纪念,希望日后在这里结交更多朋友,谢谢!

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
使用Spring AOP实现MySQL数据库读写分离案例分析
使用Spring AOP实现MySQL数据库读写分离案例分析 前言 分布式环境下数据库的读写分离策略是解决数据库读写性能瓶颈的一个关键解决方案,更是最大限度了提高了应用中读取 (Read)数据的速度和并发量。
1782 0
LINQ 从数据库读数据生成 XML
本实例是一个从数据库里读出来省份,城市,地区的数据生成3个XML文件. 首先创建一个Linq to SQL的类, 然后将省份,城市,地区的表拖入类中: 然后新建一个类,加入代码如下:         public void ResetProvinces(string path)       ...
619 0
Spark学习之数据读取与保存(4)
Spark学习之数据读取与保存(4) 1. 文件格式 Spark对很多种文件格式的读取和保存方式都很简单。 如文本文件的非结构化的文件,如JSON的半结构化文件,如SequenceFile结构化文件。通过扩展名进行处理。 2. 读取/保存文本文件 Python中读取一个文本文件 input = sc.textfile("file:///hom
1330 0
.NET数据库编程求索之路--8.使用LinqToSQL实现
8.使用LinqToSQL实现   源码下载:     /Files/SummerRain/NetDbDevRoad/8使用LinqToSql实现1ORM手工简单三层.rar     /Files/SummerRain/NetDbDevRoad/8使用LinqToSql实现2ORM手工工厂模式.
629 0
Spring Boot项目利用MyBatis Generator进行数据层代码自动生成
概 述 MyBatis Generator (简称 MBG) 是一个用于 MyBatis和 iBATIS的代码生成器。它可以为 MyBatis的所有版本以及 2.2.0之后的 iBATIS版本自动生成 ORM层代码,典型地包括我们日常需要手写的 POJO、mapper xml 以及 mapper 接口等。
1844 0
+关注
iwilsonwu
超过10年软件研发,架构及项目管理经验,四届微软Visual Studio ALM最有价值专家(2008年至2012年)。在云计算相关技术方面具有丰富经验(特别专注PaaS平台与容器与编排技术),专注基于云计算平台架构高可用及高扩展服务端技术,对微服务架构有丰富的经验,对互联网项
55
文章
2
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载