private string currentPath = ""; //katalog z którego uruchamiany jest program, wykrywany przez DBConnector i ustawiany tutaj //dla DEBUGA ustawiony jest w metodzie ReadAllData public DesktopForm(QueryData userData, string userPassword, DBReader dbReader, string currentPath) { this.userData = userData; this.userPassword = userPassword; this.dbReader = dbReader; this.currentPath = currentPath; readDesktopData(); if (desktopData.getQueryData().Count > 0) { InitializeComponent(); setupDesktop(); } // niczego nie przeczytał bo użytkownik nie ma uprawnień do żadnych programów // w chwili obecnej z tą kwerendą która jest zdefiniowana w ProgramSettings nie zadziała, bo wyświetlam wszystkie programy niezależnie od dostępu użytkownika //trzeba by filtrować np. po Grant_app else { MyMessageBox.display("użytkownik nie ma dostępu do żadnych programów", MessageBoxType.Error); this.Dispose(); } }
public QueryData readFromDB(string sqlQuery) { queryData = new QueryData(); try { SqlCommand sqlCommand = new SqlCommand(sqlQuery, dbConnection); dbConnection.Open(); SqlDataReader sqlReader = sqlCommand.ExecuteReader(); int numberOfColumns = sqlReader.FieldCount; while (sqlReader.Read()) { object[] rowData = new object[numberOfColumns]; for (int i = 0; i < numberOfColumns; i++) { rowData[i] = sqlReader.GetValue(i).ToString(); } queryData.addQueryData(rowData); } for (int i = 0; i < sqlReader.FieldCount; i++) { queryData.addHeader(sqlReader.GetName(i)); queryData.addDataType(sqlReader.GetDataTypeName(i)); } sqlReader.Close(); sqlCommand.Dispose(); } catch (System.Data.SqlClient.SqlException e) { MyMessageBox.display(e.Message + "\r\n" + dbConnection.ConnectionString, MessageBoxType.Error); } dbConnection.Close(); return(queryData); }