// public static void Delete(string selectText){ // IDbConnection dbconection = APP.Instance.Dbconection; // IDbCommand dbcomand =dbconection.CreateCommand (); // dbcomand.CommandText = selectText; // //creamos un lector // IDataReader datareader = dbcomand.ExecuteNonQuery (selectText); // } public static QueryResult Get(string selectText) { //obtenemos la conexion y los comandos de la misma IDbConnection dbconection = APP.Instance.Dbconection; IDbCommand dbcomand =dbconection.CreateCommand (); dbcomand.CommandText = selectText; //creamos un lector IDataReader datareader = dbcomand.ExecuteReader (); QueryResult queryresult = new QueryResult (); //almacenamos el resultado del metodo de las columnas en un array String[] ColumNames = getColumnames (datareader); //despues lo introducimos en el atributo del objeto correspondiente queryresult.ColumNames = ColumNames; //creamos una lista que almacenara las filas List<IList> rows = new List<IList> (); //leemos de la BD, la introducimos en la lista y la lista al atributo del objeto correspondiente while (datareader.Read()) { rows.Add(getRow (datareader)); } queryresult.Rows = rows; //cerramos la conexion datareader.Close (); return queryresult; }
public static void Fill(TreeView treeView, QueryResult queryresult) { removeAllColumns (treeView); //creamos una variable auxiliar la cual usara el metodo visto en PersisterHelper.cs String[] columNames = queryresult.ColumNames; //creamos el objeto que "dibujara" las celdas de cada fila y columna CellRendererText cellrenderertext = new CellRendererText (); for (int i=0; i<queryresult.ColumNames.Length; i++) { int column = i; //marcamos el nombre de las columna en el TreeView treeView.AppendColumn (columNames [i], cellrenderertext, delegate(TreeViewColumn tree_column, CellRenderer cell, TreeModel tree_model,TreeIter iter) { IList row = (IList)tree_model.GetValue(iter, 0); cellrenderertext.Text = row[column].ToString(); }); } //tal como las columnas creamos una variable auxiliar para meter las filas ListStore lista = new ListStore (typeof(IList)); //usando un foreach para ahorrar codigo en vez de for o while foreach (IList row in queryresult.Rows) { lista.AppendValues (row); } //por ultimo agregamos toda la informacion restante treeView.Model = lista; }
public static QueryResult Get(string selectText) { IDbConnection dbConnection = App.Instance.DbConnection; IDbCommand dbCommand = dbConnection.CreateCommand(); dbCommand.CommandText=selectText; IDataReader dataReader = dbCommand.ExecuteReader (); QueryResult queryResult = new QueryResult (); queryResult.ColumNames = getColumnames (dataReader); List<IList> rows=new List<IList>(); while (dataReader.Read()) { rows.Add (getRow(dataReader)); } queryResult.Rows = rows; dataReader.Close (); return queryResult; }
public static void Fill(ComboBox combobox, QueryResult queryresult, object id) { CellRendererText cellrenderertext = new CellRendererText (); combobox.PackStart (cellrenderertext, false); combobox.SetCellDataFunc (cellrenderertext, delegate(CellLayout cell_layout, CellRenderer cell, TreeModel tree_model, TreeIter iter) { IList row =(IList)tree_model.GetValue(iter, 0); cellrenderertext.Text=row[1].ToString(); }); ListStore liststore = new ListStore (typeof(IList)); IList first = new object[] { null, "<sin asignar>" }; TreeIter treeiterid = liststore.AppendValues (first); foreach (IList row in queryresult.Rows) { TreeIter treeiter= liststore.AppendValues (row); if (row[0].Equals(id)) treeiterid = treeiter; } combobox.Model = liststore; //combobox.Active = 0; combobox.SetActiveIter (treeiterid); }