【发布时间】:2016-11-24 21:48:54
【问题描述】:
我知道如何将 XML 数据加载到字符串中,但我无法将其内容(XML 文件节点中的内容)存储到我的数据库中。我已经尝试了很多解决方案,但没有一个对我有用。 XML 链接是:-
http://timesofindia.indiatimes.com/rssfeedstopstories.cms
我只想保存 XML 文件的节点中存在的数据,而 XML 文件来自 URL。
使用 (var client = new WebClient()) { 字符串 xmlData = new System.Net.WebClient().DownloadString("http://timesofindia.indiatimes.com/rssfeedstopstories.cms"); XmlDocument xml = 新的 XmlDocument(); XmlNodeList nodeList = xml.SelectNodes("/rss/channel/item");
foreach (XmlNode node in nodeList)
{
var title = node["title"].InnerText;
var description = node["description"].InnerText;
var link = node["link"].InnerText;
var guid = node["guid"].InnerText;
var pubdate = node["pubDate"].InnerText;
SqlConnection cnn = new SqlConnection(@"Data Source=vishal-pc\mssqlserver2012;Initial Catalog=aditya;User ID=sa;password=1234");
SqlCommand cmd = new SqlCommand("insert into XMLdata (title,description,link,guid,pubdate) VALUES (@xmlData,@xmlData1,@xmlData2,@xmlData3,@xmlData4)", cnn);
cnn.Open();
//string sqlForInsert = "INSERT INTO XMLdata (title,description,link,guid,pubdate) VALUES (@xmlData,@xmlData1,@xmlData2,@xmlData3,@xmlData4);";
int rowsAffected = 0;
//try
//{
// using (SqlConnection con = new SqlConnection(@"Data Source=vishal-pc\mssqlserver2012;Initial Catalog=aditya;User ID=sa;password=1234"))
// using (SqlCommand cmd = new SqlCommand(sqlForInsert, con))
{
cmd.Parameters.Add(new SqlParameter("@xmlData", title));
cmd.Parameters.Add(new SqlParameter("@xmlData1", description));
cmd.Parameters.Add(new SqlParameter("@xmlData2", link));
cmd.Parameters.Add(new SqlParameter("@xmlData3", guid));
cmd.Parameters.Add(new SqlParameter("@xmlData4", pubdate));
rowsAffected = cmd.ExecuteNonQuery();
cnn.Close();
}
【问题讨论】:
标签: c# sql-server-2012