自己刚刚踏入程序员的的生涯,刚开始就接手做一个小的项目,呵呵(。。废话太多了)不好意思直接进入主题
技术自己刚开始不怎么好但是自己做的时候有点小的发现,希望大家指正下
大家都知道,webservices处理数据和xml关系处理,我们就可以用LInq处理这样的话非常有效率
假设有个xml,里面从有子节点,然后叫你取属性放到数组里面,要是用xDom就非常复杂
用Linq就非常简单了
XDocument xdoc = XDocument.Parse(msg);//加载xml字符串
var query = from value in xdoc.Descendants("Command").Attributes("Value") select value.Value;//去属性的集合
List<string> arr = new List<string>();//放到泛型集合中,貌似可以用.ToList()方法,但是自己试了多出个Value属性值,??
foreach (var item in query)
{
arr.Add(item);
}
循环 遍历属性数组
SqlConnection conn = new SqlConnection();
conn.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["Connection String"].ConnectionString.ToString();
conn.Open();
SqlCommand cmd = conn.CreateCommand();
//SqlTransaction tran = conn.BeginTransaction();
//cmd.Transaction = tran;
//循环处理传入的arr元素的值,用table集合填充,放到ds0记录集中
try
{
for ( int i = 0; i < arr.Count; i++)
{
cmd.CommandText = arr[i];
//SqlCommand cmd = new SqlCommand(arr[i], conn);
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(ds0, i.ToString());
//可以添加判断,如为空,或则处理异常等等
}
就是多个表,用记录集循环填充,本来可以开事务的,就不复杂了