private List <TipoAttributo> RecuperaTipiAttributiPrivate() { List <TipoAttributo> tipiAttributi = new List <TipoAttributo>(); List <VoceMenu> vociMenu = VoceMenuRepository.Instance.RecuperaVociMenu(); SqlServerExecuteObject sseo = null; SqlDataReader dr = null; string sSql = "SELECT TA.TipoAttributoID, TA.Nome_IT, TA.Nome_EN, TA.Ordine, VMTA.VoceMenuID FROM dbo.TBL_TipiAttributi AS TA INNER JOIN STG_UI_VociMenuTipiAttributi AS VMTA ON TA.TipoAttributoID = VMTA.TipoAttributoID;"; sseo = new SqlServerExecuteObject(); sseo.CommandText = sSql; dr = SqlProvider.ExecuteReaderObject(sseo); while (dr.Read()) { TipoAttributo tipoAttributo = RiempiIstanza(dr, vociMenu); tipiAttributi.Add(tipoAttributo); } if (dr != null) { dr.Close(); dr.Dispose(); } return(tipiAttributi); }
private TipoAttributo RiempiIstanza(SqlDataReader dr, List <VoceMenu> vociMenu) { if (dr == null) { throw new ArgumentNullException("dr"); } TipoAttributo tipoAttributo = new TipoAttributo(); VoceMenu voceMenu = vociMenu.FirstOrDefault(x => x.ID == dr.GetInt32(4)); tipoAttributo.ID = dr.GetInt32(0); tipoAttributo._nome_IT = dr.IsDBNull(1) ? "" : dr.GetString(1); tipoAttributo._nome_EN = dr.IsDBNull(2) ? "" : dr.GetString(2); tipoAttributo.Ordine = dr.GetInt32(3); tipoAttributo.VoceMenu = voceMenu; return(tipoAttributo); }