XML利用接口显示并导入到数据库
//控制器代码
/// <summary>
/// 页面
/// </summary>
/// <returns></returns>
public ActionResult Index()
{
return View();
}
/// <summary>
/// 显示
/// </summary>
/// <returns></returns>
//Model是根据你接口所需要的字段定义
[HttpGet]
public string XmlShow(XMLTable01 m)
{
string ConnString = ConfigurationManager.ConnectionStrings["ConStr"].ConnectionString;
var url = "是你所需要XML的接口";
XmlDocument doc = new XmlDocument();//创建XML操作对象
doc.Load(@url);//加载xml文件的路径
//doc.DocumentElement 是获取XML的根节点
XmlNodeList UserNodes = doc.DocumentElement.ChildNodes;//获取根节点下的子节点,注意是集合,所以返回的是所有子节点
foreach (var item in UserNodes)
{
XMLTable01 m1 = new XMLTable01();
//读取每一个子节点下面的属性值
XmlElement userEle = (XmlElement)item;//将类型强制转换为XmlElement
m1.quName = userEle.GetAttribute("quName");
//XmlNode userNameNode = userEle.SelectSingleNode("UserName");
//uname = userNameNode.InnerText;
m1.pyName = userEle.GetAttribute("pyName");
m1.cityname = userEle.GetAttribute("cityname");
m1.state1 = userEle.GetAttribute("state1");
m1.state2 = userEle.GetAttribute("state2");
m1.stateDetailed = userEle.GetAttribute("stateDetailed");
m1.tem1 = userEle.GetAttribute("tem1");
m1.tem2 = userEle.GetAttribute("tem2");
m1.windState = userEle.GetAttribute("windState");
XmlAdd(m1);
}
string json = JsonConvert.SerializeXmlNode(doc["china"]);
return json;
}
/// <summary>
/// xml添加数据库
/// </summary>
/// <param name="m"></param>
/// <returns></returns>
[HttpPost]
public int XmlAdd(XMLTable01 m)
{
string sql = "自己的sql添加语句";
SqlConnection connection = SqlConnectionFactory.Connection;
return connection.Execute(sql);
}
//HTML页面
@{
Layout = null;
} <!DOCTYPE html>
<script src="~/Scripts/jquery-3.3.1.min.js"></script>
<script>
$(function () {
$.ajax({
url: "/Home/XmlShow",
dataType: "json",
success: function (d) {
for (var i = 0; i < d.china.city.length; i++) {
var tr = "<tr>"
+ "<td>" + d.china.city[i]["@@quName"] + "</td>"
+ "<td>" + d.china.city[i]["@@pyName"] + "</td>"
+ "<td>" + d.china.city[i]["@@cityname"] + "</td>"
+ "<td>" + d.china.city[i]["@@state1"] + "</td>"
+ "<td>" + d.china.city[i]["@@state2"] + "</td>"
+ "<td>" + d.china.city[i]["@@stateDetailed"] + "</td>"
+ "<td>" + d.china.city[i]["@@tem1"] + "</td>"
+ "<td>" + d.china.city[i]["@@tem2"] + "</td>"
+ "<td>" + d.china.city[i]["@@windState"] + "</td>"
+ "</tr>";
$("#tb").append(tr);
}
}
})
})
</script>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
</head>
<body>
<div>
<table>
<thead>
<tr>
<td>quName</td>
<td>pyName</td>
<td>cityname</td>
<td>state1</td>
<td>state2</td>
<td>stateDetailed</td>
<td>tem1</td>
<td>tem2</td>
<td>windState</td>
</tr>
</thead>
<tbody id="tb"></tbody>
</table>
</div>
</body>
</html>
//帮助类 使用了Dapper(也可以不用)
public class SqlConnectionFactory
{
private static readonly string ConnString =
ConfigurationManager.ConnectionStrings["ConStr"].ConnectionString; private static object _obj = new object(); public static SqlConnection Connection
{
get
{
SqlConnection connection = null; if (connection == null)
{
lock (_obj)
{
if (connection == null)
{
connection = new SqlConnection(ConnString);
}
}
}
connection.Open();
return connection;
}
}
}
重点:别忘了引用NuGet里的Dapper
Web.config里别忘了连接数据库,写的时候别忘了自己所要创建的Model 如果是死数据可以自己在控制器写,
XML利用接口显示并导入到数据库的更多相关文章
- C# DateTime的11种构造函数 [Abp 源码分析]十五、自动审计记录 .Net 登陆的时候添加验证码 使用Topshelf开发Windows服务、记录日志 日常杂记——C#验证码 c#_生成图片式验证码 C# 利用SharpZipLib生成压缩包 Sql2012如何将远程服务器数据库及表、表结构、表数据导入本地数据库
C# DateTime的11种构造函数 别的也不多说没直接贴代码 using System; using System.Collections.Generic; using System.Glob ...
- 如何将excel导入到数据库中并在gridview中显示
在页面上导入个excel文件,将该excel中的数据导入到数据库中,并且在页面的gridview中把数据显示出来. .在Asp.net中怎样将Excel文件中的数据导入到GridView中呢? 首先我 ...
- 利用TOAD实现把EXCEL数据导入oracle数据库
利用TOAD实现把EXCEL数据导入oracle数据库 工具: Toad11.7z(百度搜索,直接下载) 1.将Excel文件中某些字段导入到Oracle数据库的对应表 连接想要导入的数据库 ,然 ...
- 如何利用Oracle外部表导入文本文件的数据
同事最近在忙数据一致性比对工作,需要对不同文本文件中的数据进行比对,有的文件较大,记录较多,如果用普通的文本编辑器打开的话,很显然,会很卡,甚至打不开. 基于此,可将该文本文件的数据导入到数据库中,在 ...
- SpringMVC文件上传 Excle文件 Poi解析 验证 去重 并批量导入 MYSQL数据库
SpringMVC文件上传 Excle文件 Poi解析并批量导入 MYSQL数据库 /** * 业务需求说明: * 1 批量导入成员 并且 自主创建账号 * 2 校验数据格式 且 重复导入提示 已被 ...
- php利用PHPExcel类导出导入Excel用法
PHPExcel类是php一个excel表格处理插件了,下面我来给大家介绍利用PHPExcel类来导入与导出excel表格的应用方法,有需要了解的朋友不防参考参考(PHPExcel自己百度下载这里不介 ...
- “此网页上的某个 Web 部件或 Web 表单控件无法显示或导入。找不到该类型,或该类型未注册为安全类型。”
自从vs装了Resharper,看见提示总是手贱的想去改掉它.于是乎手一抖,把一个 可视web部件的命名空间给改了. 喏,从LibrarySharePoint.WebPart.LibraryAddEd ...
- mysql5.x升级至mysql5.7后导入之前数据库date出错的解决方法!
mysql5.x升级至mysql5.7后导入之前数据库date出错的解决方法! 修改mysql5.7的配置文件即可解决,方法如下: linux版:找到mysql的安装路径进入默认的为/usr/shar ...
- mysql5.x升级到mysql5.7后导入之前数据库date出错的快速解决方法【mysql低版本数据导入到高版本出错的解决方法】
mysql5.x升级至mysql5.7后导入之前数据库date出错,这是由于MySQL的sql_mode的影响,解决方法如下所示: [具体参考:mysql的sql_mode详解]修改mysql5.7的 ...
随机推荐
- Redis专题(3):锁的基本概念到Redis分布式锁实现
拓展阅读:Redis闲谈(1):构建知识图谱 Redis专题(2):Redis数据结构底层探秘 近来,分布式的问题被广泛提及,比如分布式事务.分布式框架.ZooKeeper.SpringCloud等等 ...
- Unity-遇到的问题小总结
1. event trigger后面显示不了对应的方法 原因:我是直接把脚本拖拽进去的,这是没有实例化的,拖拽进去的应该是挂载这个脚本的GameObject就可以了 2.制作prefeb 将场景中的单 ...
- 痞子衡嵌入式:MCUBootUtility v2.0来袭,i.MXRT1010哪里逃
-- 恩智浦半导体从2017年10月开始正式推出业内首款跨界处理器-i.MX RT系列,如今距离该系列第一款i.MXRT1050发布已过去近2年,i.MX RT系列在行业里应用越来越广泛,i.MX R ...
- Hadoop源代码点滴-文件系统HDFS
HDFS是Hadoop集群的文件系统,这是一种分布(distributed).容错(fault tolerant)的文件系统 所谓分布,是说整个文件系统的内容并非集中存储在一台或几台“文件服务器上”, ...
- dependencies 与 dependencyManagement 区别
dependencies 即使在子项目中不写该依赖项,那么子项目仍然会从父项目中继承该依赖项(全部继承)dependencyManagement 里只是声明依赖,并不实现引入,因此子项目需要显示的声明 ...
- 夯实Java基础系列16:一文读懂Java IO流和常见面试题
本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial 喜欢的话麻烦点下 ...
- [Python] Python 学习记录(1)
1.概论 弱类型 一个变量能被赋值时能与原类型不同 x = 1 x = "1" #不加分号,给x赋值为int后再次赋值为string是可行的 与或非 and or not / ...
- yii2 rules 规则
required : 必须值验证属性 [['字段名'],required,'requiredValue'=>'必填值','message'=>'提示信息']; #说明:CRequiredV ...
- 网络下载器 Internet Download Manager v6.35.5 绿色便携版
Internet Download Manager,简称 IDM,是国外的一款优秀网络下载工具.目前凭借着下载计算的速度优势在外媒网站中均受好评,现在已被多数国人熟知.Internet Downloa ...
- 自学导航页(待续ing)
1 博客导航1.1 linuxlinux全线教程–提供了linux教程,服务器管理教程,BSD教程,还有编程语言(C/Java/Python/Perl),以及网络等全栈学习教程 1.2 存储技术NoS ...