您的位置:首页 > 其它

webservices关于处理的一些细节

2010-04-22 14:14 316 查看
自己刚刚踏入程序员的的生涯,刚开始就接手做一个小的项目,呵呵(。。废话太多了)不好意思直接进入主题

技术自己刚开始不怎么好但是自己做的时候有点小的发现,希望大家指正下

大家都知道,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());

//可以添加判断,如为空,或则处理异常等等

}

就是多个表,用记录集循环填充,本来可以开事务的,就不复杂了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: