public static void Exec() { //const string sql = "SELECT * FROM Contacts"; DataTable dt = new DataTable(); dt = GetInfo("SELECT USERID,Name,Email FROM Users"); List <ZohoUser> lzus = new List <Zoho.ZohoUser>(); foreach (DataRow row in dt.Rows) { lzus.Add(new Zoho.ZohoUser() { USERID = row["USERID"].ToString(), NameEm = string.Format("{0} ({1})", row["Name"], row["Email"]) }); } ZohoWrite.Write(@"D:\web\AskFormCustom\Zoho\Package\ZohoUser.json", JsonConvert.SerializeObject(lzus)); dt = GetInfo("select* from Contacts where CONTACTID = 123456789"); List <string> columns = new List <string>(); foreach (DataColumn col in dt.Columns) { columns.Add(col.ColumnName); } ZohoWrite.Write(@"D:\web\AskFormCustom\Zoho\Package\ZohoColumns.json", JsonConvert.SerializeObject(columns)); }
public static void Exec(bool isInsert = true) { string sqls = File.ReadAllText(@"D:\web\AskFormCustom\Zoho\Package\SQL.json"); if (sqls.Trim().Length == 0) { return; } List <Sqls> ls = JsonConvert.DeserializeObject <List <Sqls> >(sqls); if (ls.Count == 0) { return; } //已执行的拥有者ID List <string> Owns = new List <string>(); if (isInsert) { //所有添加语句 var inserts = ls.FindAll(x => x.Email == string.Empty); inserts.ForEach(x => { try { ToZoho(x.SQL); //移除已执行的新增语句 ls.Remove(x); } catch (Exception ex) { } }); //所有修改语句 ZohoWrite.Write(@"D:\web\AskFormCustom\Zoho\Package\SQL.json", JsonConvert.SerializeObject(ls)); return; } else { //所有修改语句 var updates = ls.FindAll(x => x.Email != string.Empty); foreach (var u in updates) { if (!Owns.Contains(u.OwnID)) { var dt = GetDtByOwnID(u.OwnID); if (dt.Rows.Count == 0) { continue; } //当前用户要有更新语句 var ownUpdates = updates.FindAll(n => n.OwnID == u.OwnID); foreach (var o in ownUpdates) { DataRow[] drs = dt.Select(string.Format("Email='{0}'", o.Email)); if (drs.Length != 0) { string N_CONTACTID = drs[0]["CONTACTID"].ToString(); if (N_CONTACTID.Length > 0 && o.SQL.IndexOf("N_CONTACTID") >= 0) { string sql = o.SQL.Replace("N_CONTACTID", N_CONTACTID); ToZoho(sql); Console.WriteLine("Zoho更新了一条数据"); } } } Owns.Add(u.OwnID); } } } }