private void InportZyk(DataTable dt, List <BMKTable> BMK_list) { short num = 1; List <T_zyk> listAll = new List <T_zyk>(); //首先确定所有位置 List <int> pos = new List <int>(); for (int i = 0; i < dt.Columns.Count; i++) { if ((dt.Columns[i].ColumnName.Contains("TDDWDM")) && (dt.Columns[i].ColumnName.Length >= 7)) { pos.Add(i); } } foreach (DataRow dr in dt.Rows) { long lbmkID = GetBMKIDFromList(BMK_list, dr["KSH"].ToString()); if (lbmkID > 0) { for (int j = 0; j < pos.Count; j++) { long lPcdm = GetOriginListID(PCDM_list, GetOneStrValue(dr, "PCDM", CosDataBase.LONGINT_TYPE)); long lKldm = GetOriginListID(KLDM_list, GetOneStrValue(dr, "KLDM", CosDataBase.LONGINT_TYPE)); long lJhxzdm = GetOriginListID(JHXZDM_list, GetOneStrValue(dr, "JHXZ", CosDataBase.LONGINT_TYPE)); long lTddwdm = GetOriginListID(TDDW_list, dr.ItemArray[pos[j]].ToString()); long lZydh = GetOriginListID(ZYDH_list, dr.ItemArray[pos[j] + 1].ToString()); //Expression<Func<T_jhk, bool>> where = (c => c.ZydhOrigin == lZydh && c.TddwdmOrigin == lTddwdm); //List<T_jhk> list = GetRecord(where); List <T_jhk> list = JHK_list.Where(c => c.ZydhOrigin == lZydh && c.TddwdmOrigin == lTddwdm).ToList(); if ((list != null) && (list.Count > 0)) { T_zyk model = new T_zyk(); model.RelationID1 = lbmkID; model.RelationID2 = list[0].ID; model.PcdmOrigin = lPcdm; model.KldmOrigin = lKldm; model.JhxzdmOrigin = lJhxzdm; model.JhlbdmOrigin = 0; model.TddwdmOrigin = lTddwdm; model.ZydhOrigin = lZydh; model.Zyxh = num; listAll.Add(model); num++; } } } } AddRecords(listAll); }
public void InportOriginData(DataTable dt, int nYear, long lProvinceID) { if (dt != null) { List <T_zyk> listAdd = new List <T_zyk>(); bmkTableManage bmkMan = new bmkTableManage(); foreach (DataRow dr in dt.Rows) { //long lbmkID = bmkMan.GetbmkID(dr["KSH"].ToString()); long lbmkID = GetBMKIDFromList(BMK_list, dr["KSH"].ToString()); if (lbmkID != 0) { //首先找到计划库对应的字段 long lPcdm = GetOriginListID(PCDM_list, GetOneStrValue(dr, "PCDM", CosDataBase.LONGINT_TYPE)); long lKldm = GetOriginListID(KLDM_list, GetOneStrValue(dr, "KLDM", CosDataBase.LONGINT_TYPE)); long lJhxzdm = GetOriginListID(JHXZDM_list, GetOneStrValue(dr, "JHXZDM", CosDataBase.LONGINT_TYPE)); long lJhlbdm = GetOriginListID(JHLBDM_list, GetOneStrValue(dr, "JHLBDM", CosDataBase.LONGINT_TYPE)); long lTddwdm = GetOriginListID(TDDW_list, GetOneStrValue(dr, "TDDWDM", CosDataBase.LONGINT_TYPE)); long lZydh = GetOriginListID(ZYDH_list, GetOneStrValue(dr, "ZYDH", CosDataBase.LONGINT_TYPE)); //Expression<Func<T_jhk, bool>> where = (c => c.ZydhOrigin == lZydh && c.TddwdmOrigin == lTddwdm); //List<T_jhk> list = GetRecord(where); List <T_jhk> list = JHK_list.Where(c => c.ZydhOrigin == lZydh && c.TddwdmOrigin == lTddwdm).ToList(); if ((list != null) && (list.Count > 0)) { long lJhkID = list[0].ID; //Expression<Func<T_zyk, bool>> where1 = (c => c.RelationID1 == lbmkID && c.RelationID2 == lJhkID); //List<T_zyk> list1 = GetRecord(where1); //if ((list1 == null) || (list1.Count == 0)) //{ T_zyk model = new T_zyk(); model.RelationID1 = lbmkID; model.RelationID2 = lJhkID; model.PcdmOrigin = lPcdm; model.KldmOrigin = lKldm; model.JhxzdmOrigin = lJhxzdm; model.JhlbdmOrigin = lJhlbdm; model.TddwdmOrigin = lTddwdm; model.ZydhOrigin = lZydh; model.Zyxh = Convert.ToInt16(GetOneStrValue(dr, "ZYXH", CosDataBase.SMALLINT_TYPE)); listAdd.Add(model); //AddOneRecord(model); //} } } } AddRecords(listAdd); } }