// text=检测的公式 exist_表格_字段 public static I_TableVaild Create(string text) { string[] infos = text.Split('_'); string type = infos[0]; if (!vaild_map.ContainsKey(type)) { Debug.LogErrorFormat("无效的规则:[{0}]", text); return(null); } I_TableVaild vaild = Activator.CreateInstance(vaild_map[type]) as I_TableVaild; if (vaild == null) { return(null); } vaild.SetVaildData(infos); return(vaild); }
// 检测数据是否合格 public string CheckVaild() { if (string.IsNullOrEmpty(vaild)) { return(string.Empty); } I_TableVaild table_vaild = TableVaildFactory.Create(vaild); if (table_vaild == null) { return(string.Format(TableVaildConst.no_valid, vaild)); } string mess = table_vaild.CheckVaild(data); if (string.IsNullOrEmpty(mess)) { return(mess); } else { return(des + "," + prop + "," + key + "," + vaild + "/n" + mess); } }