当前位置:编程学习 > C#/ASP.NET >>

请教

List<Dictionary<string, string>> abw = new List<Dictionary<string, string>>();
abw.Add(ImportData(orginalText, fileType)); 

有两个串
a=1&b=2&c=3
d=4&e=5&f=6

最后要生成两个SQL语句,
之所以用到上面两句话,是因为串必须拆分进行校验。

不知大家认为这样做是否妥当,或者有无更好的建议。谢谢。 --------------------编程问答-------------------- a b c d e f 表示什么 --------------------编程问答-------------------- 表达 不清楚,无法理解你的思想,不知道你要干什么 --------------------编程问答-------------------- a b c d e f 是field名,数字是值,
生成的SQL语句是 insert into ....(a,b,c) values(1,2,3)
insert into ...(d,e,f) value(4,5,6) --------------------编程问答--------------------
引用 3 楼  的回复:
a b c d e f 是field名,数字是值,
生成的SQL语句是 insert into ....(a,b,c) values(1,2,3)
insert into ...(d,e,f) value(4,5,6)

这么搞还不如创建一个类来操作,
你看这样写让人很难明白 --------------------编程问答--------------------
引用 3 楼  的回复:
a b c d e f 是field名,数字是值,
生成的SQL语句是 insert into ....(a,b,c) values(1,2,3)
insert into ...(d,e,f) value(4,5,6)

用正则([^=&]+)=([^=&]*)
取第一个分组和第二个分组(比如a=1就会得到第一个分组=a,第二个分组=1)
然后把第一个分组的用逗号连接起来,把第二个分组连接起来
在构造你的sql语句
当然你也可以以=和&Split然后分别构造
--------------------编程问答-------------------- private Dictionary<string, string> ImportData(string orginalText, string tableName)
        {
            string[] paramCollection = orginalText.Split('&');

            Dictionary<string, string> myDictionary = new Dictionary<string, string>();
            foreach (string valuekey in paramCollection)
            {
                string[] vk = valuekey.Split('=');
                myDictionary.Add(vk[0], vk[1]);
            }


            string balanceno = myDictionary[Invoice.balanceno];
            string invoicecode = myDictionary[Invoice.TiInvoicecode];
            string invoiceno = myDictionary[Invoice.TiInvoiceno];
            if (!balanceno.Equals(invoicecode + "-" + invoiceno)) //应收账款编号是否等于易做图码-发票号码
            {
                myDictionary.Add("IspanResult", "dddddddd");
            }
            if (Convert.ToDateTime(myDictionary[Invoice.TiEndtime]) < Convert.ToDateTime(myDictionary[Invoice.TiTradetime]))
            {
                myDictionary.Add("IspanResult", "cccccc");
            }
            if (Convert.ToDateTime(myDictionary[Invoice.TiEndtime]) > DateTime.Now)
            {
                myDictionary.Add("IspanResult", "bbbbbb");
            }
            return myDictionary;
} --------------------编程问答-------------------- List<Dictionary<string, string>> successedResult = new List<Dictionary<string, string>>();
            List<Dictionary<string, string>> failedResult = new List<Dictionary<string, string>>();

Dictionary<string, string> returnValue = ImportData(orginalText, fileType);
                        if (!returnValue.ContainsKey("IspanResult"))
                            successedResult.Add(returnValue);
                        else
                            failedResult.Add(returnValue);
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,