예제 #1
0
        //Udela GET pozadavek a vysledek vlozi do tabulky//
        public async Task ReloadListView()
        {
            if (MainControll.DataListView != null)
            {
                RestRequests <List <Book> > rest = new RestRequests <List <Book> >();

                string SQL_qurey = "SELECT * FROM dbo.Books ";
                if (SEARCH != null)
                {
                    SQL_qurey += " WHERE " + MainControll.SEARCH_BY + " LIKE '" + MainControll.SEARCH + "%'";
                }
                SQL_qurey += " ORDER BY " + MainControll.ORDER;

                Books.books = await rest.GetRequest(MainControll.URL, SQL_qurey);

                if (Books.books != null)
                {
                    MainControll.DataListView.Items.Clear();

                    foreach (Book b in Books.books)
                    {
                        MainControll.DataListView.Items.Add(b);
                    }
                }
            }
        }
예제 #2
0
            private async Task SendHttpRequest()
            {
                string url = ETurl.Text;
                {
                    bool isFirst = true;
                    //await MyLogger.Alert(url);
                    foreach (var field in AKVfield.BLPmain.Treap.ToList())
                    {
                        //await MyLogger.Alert($"Field: {field.Key} = {field.Value}");
                        url    += (isFirst ? "?" : "&");
                        isFirst = false;
                        url    += System.Net.WebUtility.UrlEncode(field.Key) + "=" + System.Net.WebUtility.UrlEncode(field.Value);
                    }
                }
                var blankPoint = url.IndexOf(' ');

                MyLogger.Assert(blankPoint != -1);
                HttpWebRequest request = WebRequest.CreateHttp(url.Substring(blankPoint + 1));

                foreach (var header in AKVheader.BLPmain.Treap.ToList())
                {
                    //await MyLogger.Alert($"Header: {header.Key} = {header.Value}");
                    request.Headers[header.Key] = header.Value;
                }
                request.Method = url.Remove(blankPoint);
                if (Array.IndexOf(request.Headers.AllKeys, "Content-Length") != -1)
                {
                    using (var stream = await request.GetRequestStreamAsync())
                    {
                        var bytes = Encoding.UTF8.GetBytes(BodyTextToSend());
                        //MyLogger.Log(Encoding.UTF8.GetString(bytes).Replace("\n", "\\n").Replace("\r", "\\r").Replace("\t", "\\t")); //換行為甚麼是\r啦 >_<
                        await stream.WriteAsync(bytes, 0, bytes.Length);
                    }
                }
                string result;

                try
                {
                    using (var response = await RestRequests.GetHttpResponsePublicAsync(request))
                    {
                        if (response == null)
                        {
                            result = "(Null Response)";
                        }
                        else
                        {
                            result = await RestRequests.LogHttpWebResponsePublic(response, true);
                        }
                    }
                }
                catch (Exception error)
                {
                    result = $"{error}";
                }
                EDresponse.Text = result;
            }
예제 #3
0
        private async void OnKeyUpHandler(object sender, KeyEventArgs e)
        {
            if (e.Key == Key.Enter)
            {
                String new_text  = (sender as TextBox).Text;
                String data_name = (sender as TextBox).Name;

                var  item     = (sender as TextBox).DataContext;
                Book new_book = (Book)item;

                switch (data_name)
                {
                case "Name":
                    new_book.Name = new_text;
                    break;

                case "Author":
                    new_book.Author = new_text;
                    break;

                case "Translation":
                    new_book.Translation = new_text;
                    break;

                case "PublicationDate":
                {
                    try { new_book.PublicationDate = Convert.ToInt32(new_text); }
                    catch
                    {
                        //MessageBox.Show("Nezadali jste číslo!!", "Error");//
                    }
                }
                break;
                }

                int  index = book_list_view.Items.IndexOf(item);
                Book b     = (Book)book_list_view.Items.GetItemAt(index);
                index = b.ID;

                //Book new_book = (Book)book_list_view.SelectedItems[0];


                string addres            = MainControll.URL;
                RestRequests <Book> rest = new RestRequests <Book>();

                await rest.PutRequest(addres, new_book.ID, new_book);

                await control.ReloadListView();
            }
        }
예제 #4
0
        private async void Delete_click(object sender, RoutedEventArgs e)
        {
            //ziskani indexu polozky v listview//
            var item  = (sender as Button).DataContext;
            int index = book_list_view.Items.IndexOf(item);

            //Ziskani ID z dat na pozici - index//
            Book b = (Book)book_list_view.Items.GetItemAt(index);

            index = b.ID;

            string addres = MainControll.URL;
            RestRequests <List <Book> > rest = new RestRequests <List <Book> >();
            await rest.DeleteRequest(addres, index);

            //Prenacteni listview//
            await control.ReloadListView();
        }
예제 #5
0
        private async void Create_click(object sender, RoutedEventArgs e)
        {
            Book new_book = new Book();

            new_book.Name        = TB_NewData2.Text;
            new_book.Author      = TB_NewData3.Text;
            new_book.Translation = TB_NewData4.Text;

            try { new_book.PublicationDate = Convert.ToInt32(TB_NewData5.Text); }
            catch
            {
                //MessageBox.Show("Nezadali jste číslo!!", "Error");//
            }

            string addres = MainControll.URL;

            RestRequests <Book> rest = new RestRequests <Book>();
            await rest.PostRequest(addres, new_book);

            await control.ReloadListView();
        }
 public IntegracaoTaxaJuros(RestRequests restRequests)
 {
     _restResquest = restRequests;
 }