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的 ...
随机推荐
- seo搜索引擎的优化方法
现在互联网的入口,一般都是被搜索引擎霸占.所以我们要想让别人搜索时,优先看到我们的网站.有两种方法: 1.竞价排名.这是需要钱的,给的钱越多,排名越靠前.参考某度.. 2.不想花钱,就使用seo搜索引 ...
- unity - TileMap的注意事项
本文记述了一些在使用Tilemap绘制场景时的需要注意的细节问题. 关于Tilemap的创建及使用本文不做说明,但推荐佳作:Unity中使用Tilemap快速创建2D游戏世界 - feng 本文项目地 ...
- 注解在Java中是如何工作的
来一点咖啡,准备好进入注解的世界. 注解一直是 Java 的一个非常重要的部分,它从 J2SE 5.0 开始就已经存在了.在我们的应用程序代码中,经常看到 @Override 和 @Deprecate ...
- 23种设计模式之代理模式(Proxy Pattern)
在软件开发过程中,有些对象有时候会由于网络或其他的障碍,以至于不能够或者不能直接访问到这些对象,如果直接访问对象给系统带来不必要的复杂性,这时候可以在客户端和目标对象之间增加一层中间层,让代理对象代替 ...
- C语言I—2019秋作业02
1.[新增内容] 这个作业属于那个课程 C语言程序设计 这个作业要求在哪里 <C语言I-2019秋作业02> 我在这个课程的目标是 这个作业在那个具体方面帮助我实现目标 <实现一些基 ...
- [PHP] php, apache, VS Code安装与配置
1. 下载
- 使用Xhell连接Docker虚拟机
平时我们可以使用Xhell来连接Docker虚拟机. 1.首先,我们来用VirtualBox管理器来看一下default虚拟机的网络配置: 2.新建Xshell会话: a.我们可以看到ssh的主机IP ...
- Windows10 1903错误0xc0000135解决方案
Windows10 1903错误0xc0000135解决方案 === windows10 1903是2019年Mircosoft推出的最新版windows操作系统,但是有很多机器装上之后会存在不支持. ...
- spring boot参数验证
必须要知道 简述 JSR303/JSR-349,hibernate validation,spring validation 之间的关系 JSR303 是一项标准,JSR-349 是其的升级版本,添加 ...
- day 20
目录 一.继承初体验 二.寻找继承关系 三.继承背景下对象属性查找顺序 四.派生 五.子类派生出新的属性,并重复父类的属性 六.新式类与经典类(了解) 一.继承初体验 父类: class Parent ...