/// <summary> /// Добавление в БД гугле таблиц НЕ использовать /// </summary> public static void ConnektGoogleTabl() { using (TablGoogleContext db = new TablGoogleContext()) { // создаем два объекта User TablGoogle tablGoogle = new TablGoogle { NameClienta = "Первый клиент", PassClient = "12345" }; TablGoogle tablGoogle2 = new TablGoogle { NameClienta = "Второй клиент", PassClient = "7777" }; // User user2 = new User { Name = "Второнах", Age = 25 }; // добавляем их в бд db.TablGoogles.Add(tablGoogle); db.TablGoogles.Add(tablGoogle2); //db.Users.Add(user1); //db.Users.Add(user2); db.SaveChanges(); // сохранение действий с БД log += "Записанный в БД текущие обьекты: \t\n tablGoogle и tablGoogle2 \t\n"; Console.WriteLine("Что то записалось в БД"); } Console.WriteLine(log); Console.ReadKey(); }
/// <summary> /// Тестовой метод для работы с запросами Linq /// </summary> public static void LinoConneckt() { //https://www.youtube.com/watch?v=3yb4idCg-Qs&t=6859s //https://www.youtube.com/watch?v=ySDvruLcn2I&t=1076s using (var context = new TablGoogleContext()) // экземлряр контекства для связи с бд { var table = new TablGoogle(); context.TablGoogles.Load(); //Загрузка данных из БД var temp = context.TablGoogles.Local.ToBindingList(); //выгружаем в локальный кеш данне из бд int tempCant = temp.Count; //количество элементов string tempZnach = ""; foreach (var tt in temp.Reverse()) // Выводим с помощью реверса. Сначало последние { table.Id = tt.Id; table.NameClienta = tt.NameClienta; //if (table.Id <= 20) //{ tempZnach += $"ID{table.Id},\t\n ИМЯ {table.NameClienta} \t\n "; // } } //string temp1 = temp. Console.WriteLine($"Общие количество записей {tempCant}"); Console.WriteLine(tempZnach); // this.DataContext = db.Phones.Local.ToBindingList(); } Console.ReadKey(); }
//НЕ использовать public static void AddTableToSqllite(TablGoogle tablGoogle) { using (TablGoogleContext db = new TablGoogleContext()) { // создаем два объекта User TablGoogle tablGoogle1 = new TablGoogle(); tablGoogle1 = tablGoogle; // TablGoogle tablGoogle2 = new TablGoogle { NameClienta = "Второй клиент", PassClient = "7777" }; // User user2 = new User { Name = "Второнах", Age = 25 }; // добавляем их в бд db.TablGoogles.Add(tablGoogle); //db.TablGoogles.Add(tablGoogle2); //db.Users.Add(user1); //db.Users.Add(user2); db.SaveChanges(); // сохранение действий с БД // log += "Записанный в БД текущие обьекты: \t\n tablGoogle и tablGoogle2 \t\n"; // Console.WriteLine($"Что то записалось в БД{tablGoogle1}"); } // Console.WriteLine(log); // Console.ReadKey(); }
/// <summary> /// Получение общего количества строк в таблице /// </summary> /// <returns></returns> public static int GetCountTablGoogle() { int rezultat; using (var db = new TablGoogleContext()) { db.TablGoogles.Load(); //Загрузка данных из БД rezultat = db.TablGoogles.Local.ToBindingList().Count(); //выгружаем в локальный кеш данне из бд } return(rezultat); }
/// <summary> /// Поиск по точному значению /// </summary> /// <param name="nameClient"></param> public static void SeachNameClient(string nameClient) { string tempLog = $"Поиск в таблице по имени клиента {nameClient} "; List <TablGoogle> lisTtablGoogles = new List <TablGoogle>(); // лист для хранения найденных элементов TablGoogle tablGoogle = new TablGoogle(); #region Поиск по "строгой" строке. //using (var db = new TablGoogleContext()) // контекст для связи с бд //{ // db.TablGoogles.Load(); // загрузка базы в локальный кэш // foreach (var tenCount in db.TablGoogles) // { // if(tenCount.NameClienta == nameClient) // { // lisTtablGoogles.Add(tenCount); // // Console.WriteLine(tenCount.NameClienta); // } // } // foreach (var listTemp in lisTtablGoogles) // { // Console.WriteLine(listTemp.NameClienta); // } //} #endregion using (var db2 = new TablGoogleContext()) { db2.TablGoogles.Load(); var name = db2.TablGoogles.Select(c => c.NameClienta).FirstOrDefault(); // Вывод первого значения с строке IQueryable <string> nameSeach = db2.TablGoogles.Select(c => c.NameClienta).Where(c => c.Contains(nameClient)); var temp = (from t in db2.TablGoogles where t.NameClienta.ToUpper().StartsWith(nameClient) select t).ToString(); //var seahs = db2.TablGoogles.Where(t => t.NameClienta.ToUpper("А").OrderBy()); Console.WriteLine($"Поиск 1{name}"); Console.WriteLine($"Поиск 2---{nameSeach}"); Console.WriteLine($"Поиск 3---{temp}"); foreach (var ss in temp) { // Console.WriteLine(ss); } } Console.WriteLine("Поиск завершен...Нажмите любую кнопку"); Console.ReadKey(); }
/// <summary> /// Удаление нужной строки по id /// </summary> /// <param name="idClienta"></param> public static void DeleteClientTablGoogle(int idClienta) { string tempLog = $"Удаленна строка под ID {idClienta}"; //Обект для доавления в БД TablGoogle adduserTable = new TablGoogle(); using (var db = new TablGoogleContext())// конткст для работы с базой данной { TablGoogle adduserTable2 = new TablGoogle(); db.TablGoogles.Load(); // загрузка текущего стостояния бд в локальный кэш adduserTable2 = db.TablGoogles.Find(idClienta); db.TablGoogles.Remove(adduserTable2); // удаление нужной строки db.SaveChanges(); // сохранение изменения в БД } }
/// <summary> /// Полученние данных из БД из Таблиц гугла /// </summary> public static void AddDataTableGoogle() { using (TablGoogleContext db = new TablGoogleContext()) { Console.WriteLine("Получение данных из БД"); var temDb = db.TablGoogles; // получаем данные из Базы lанных log += $"Получаем данные из Базы данных!!!\t\n Количество элементов в БД {temDb.Count()}\t\n"; foreach (TablGoogle user in temDb) { string tempUsr = $"ID{user.Id} ИМЯ:{user.NameClienta} Телефоны:{user.PassClient} \t\n"; Console.WriteLine(tempUsr); SaveFileText(tempUsr, "logWriterBD.txt"); } } Console.WriteLine(log); Console.ReadKey(); }
/// <summary> /// Вывод всех данных из БД + поиск по слову /// </summary> public static void GetClient() { using (TablGoogleContext tablGoogle = new TablGoogleContext()) { string temp = "ООО"; // переменная хранит искомая имя string tempResult = ""; int tempResultOD; foreach (TablGoogle googleTable in tablGoogle.TablGoogles) { if (googleTable.NameClienta.Contains(temp)) { tempResult += $"{googleTable.Id} {googleTable.NameClienta} \t\n"; tempResultOD = googleTable.Id; TestListGetBDTable.Add(tempResult); TestListGetBDTableIDCllient.Add(tempResultOD); TestListTablGoogle.Add(googleTable); } //Console.WriteLine(tempResult); } Console.WriteLine(tempResult); Console.WriteLine($"Количество найденых клиентов:{TestListGetBDTable.Count}"); } }
/// <summary> /// Добавление новой строки в таблицу /// </summary> /// <param name="nameClient"></param> /// <param name="passClient"></param> /// <param name="telefonClient"></param> public static void AddClientTablGoogle(string nameClient, string passClient, string telefonClient) { //Обект для доавления в БД TablGoogle adduserTable = new TablGoogle() { NameClienta = nameClient, PassClient = passClient, TelefonClient = telefonClient, DataTimeAddTable = DateTime.Now.ToString() }; using (var db = new TablGoogleContext()) // конткст для работы с базой данной { db.TablGoogles.Load(); // загрузка текущего стостояния бд в локальный кэш // var resulIF = db.TablGoogles.Where(item => item.NameClienta != adduserTable.NameClienta); // db.TablGoogles.Add(adduserTable); // добавление новой строки db.SaveChanges(); // сохранение изменения в БД } }
/// <summary> /// Скачиваем данные из таблицы гугл. Тимы и пароли и запысываем в sqllite /// </summary> public static void test2() { UserCredential credential; Stopwatch watch = new Stopwatch(); //обьект для замера времени работы программы watch.Start(); using (var stream = new FileStream("credentials.json", FileMode.Open, FileAccess.Read)) { // Маркер файла.json сохраняет маркеры доступа и обновления пользователя // automatically when the authorization flow completes for the first time. string credPath = "token.json"; credential = GoogleWebAuthorizationBroker.AuthorizeAsync( GoogleClientSecrets.Load(stream).Secrets, Scopes, "user", CancellationToken.None, new FileDataStore(credPath, true)).Result; Console.WriteLine("Файл учетных данных, сохраненный: " + credPath); } // Create Google Sheets API service. var service = new SheetsService(new BaseClientService.Initializer() { HttpClientInitializer = credential, ApplicationName = ApplicationName, }); // Define request parameters. //String spreadsheetId = "1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"; String spreadsheetId = "1H6LEiczHkmw5tYBoO9nwR_fBXZTm4QAudwQDNYuIsDo"; // String range = "Class Data!A2:E"; String range = "A2:E"; // с каких ящеек ищем SpreadsheetsResource.ValuesResource.GetRequest request = service.Spreadsheets.Values.Get(spreadsheetId, range); // Prints the names and majors of students in a sample spreadsheet: // https://docs.google.com/spreadsheets/d/1H6LEiczHkmw5tYBoO9nwR_fBXZTm4QAudwQDNYuIsDo/edit#gid=0 // https://docs.google.com/spreadsheets/d/1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms/edit ValueRange response = request.Execute(); IList <IList <Object> > values = response.Values; // получаем таблицу Console.WriteLine("Содержимое таблицы"); int countStirnTable = 0; int variableStirnTable = values.Count; var tempList = new List <string>(); string temph = ""; using (TablGoogleContext db = new TablGoogleContext()) { // создаем два объекта TablGoogle TablGoogle tablGoogle = new TablGoogle(); foreach (var row in values) { try { temph = $"Организация: {row[0]}, № телефона: {row[1]}, пароль:{row[2]}"; // Console.WriteLine("Организация: {0}, № телефона: {1}, пароль:{2}", row[0], row[1], row[2]); Console.WriteLine(temph); tempList.Add(temph); countStirnTable++; SaveFileText(temph); TablGoogle tablGoogle1 = new TablGoogle { NameClienta = row[0].ToString(), TelefonClient = row[1].ToString(), PassClient = row[2].ToString(), DataTimeAddTable = (DateTime.Now.ToString()) }; db.TablGoogles.Add(tablGoogle1); // добавление в бд // db.SaveChanges(); // выходят ошибки } catch (Exception ex) { Console.WriteLine(ex); } } //watch.Stop(); Console.WriteLine($"Завершино Всего в списке {variableStirnTable} строк! \t\nИдет добавление данных в БД \t\n Ожидайте...."); db.SaveChanges(); // сохранение действий с БД Console.WriteLine("Завершено!! Нажмите любую кнопку"); watch.Stop(); // Console.Read(); } Console.WriteLine($"Завершино Всего в списке {variableStirnTable} строк!/t/n Полученно перебором{countStirnTable}\t\n Время получения списка пользователей и добавения данных {watch.ElapsedMilliseconds} милисекунд или {watch.Elapsed.Seconds}секунд \t\n"); Console.Read(); Console.Read(); }