コード例 #1
0
        public void Test_Chon_ComboBox_Nhap_Thong_Tin_Qua_Dai_3()
        {
            Search_Book test_search = new Search_Book();
            string      cbbox       = "MaLv";
            string      txtbox      = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";//31 ky tu
            string      actual      = test_search.search_1(cbbox, txtbox);
            string      expected    = "Mã lĩnh vực quá dài";

            Assert.AreEqual(expected, actual);
        }
コード例 #2
0
        public void Test_Chon_ComboBox_Bo_Trong_Thong_Tin_2()
        {
            Search_Book test_search = new Search_Book();
            string      cbbox       = "TENSACH";
            string      txtbox      = "";
            string      actual      = test_search.search_1(cbbox, txtbox);
            string      expected    = "select*from tblSach where TENSACH like '%%'";

            Assert.AreEqual(expected, actual);
        }
コード例 #3
0
        public void Test_Bo_Trong_ComboBox_Bo_Trong_Thong_Tin()
        {
            Search_Book test_search = new Search_Book();
            string      cbbox       = "";
            string      txtbox      = "";
            string      actual      = test_search.search_1(cbbox, txtbox);

            string expected = "select * from tblSach";

            Assert.AreEqual(expected, actual);
        }
コード例 #4
0
        public void Test_Nhap_Dung_Thong_Tin_Tim_Kiem_3()
        {
            Search_Book test_search = new Search_Book();
            string      cbbox       = "MANXB";
            string      txtbox      = "NXB01";
            string      actual      = test_search.search_1(cbbox, txtbox);

            string expected = "select*from tblSach where MANXB like '%" + txtbox + "%'";

            Assert.AreEqual(expected, actual);
        }
コード例 #5
0
        public void Test_Nhap_Dung_Thong_Tin_Tim_Kiem()
        {
            Search_Book test_search = new Search_Book();
            string      cbbox       = "MASACH";
            string      txtbox      = "S02";
            string      actual      = test_search.search_1(cbbox, txtbox);

            string expected = "select*from tblSach where " + cbbox + " like " + "'%" + txtbox + "%'";

            Assert.AreEqual(expected, actual);
        }
コード例 #6
0
        public async Task <IActionResult> Index(string sortOrder, string searchNameString, string searchAuthorString, int page = 1, int pageSize = 10)
        {
            ViewData["CurrentSort"] = sortOrder;
            ViewData["NameParm"]    = searchNameString;
            ViewData["AuthorParm"]  = searchAuthorString;
            var search = new Search_Book()
            {
                Author = searchAuthorString, SortType = sortOrder, Name = searchNameString, PageIndex = page, PageSize = pageSize
            };

            return(View(await _booksService.SearchAsync(search)));
        }
コード例 #7
0
        public void Test_Nhap_sai_dinh_dang_ngay()
        {
            Search_Book test_search = new Search_Book();
            string      cbbox       = "NGAYNHAP";
            string      txtbox      = "30/02/2019";//31 ky tu

            CheckDate date      = new CheckDate();
            string    actual1   = date.Check_Date(txtbox);
            string    expected1 = "Ngày không hợp lệ";

            Assert.AreEqual(expected1, actual1);

            string actual2   = test_search.search_1(cbbox, txtbox);
            string expected2 = "select * from tblSach";

            Assert.AreEqual(expected2, actual2);
        }//1919 2119
コード例 #8
0
        public void Test_Nhap_sai_dinh_dang_nam()
        {
            Search_Book test_search = new Search_Book();
            string      cbbox       = "NAMXB";
            string      txtbox      = "aaaa";//31 ky tu

            CheckDate date      = new CheckDate();
            string    actual1   = date.Check_Year(txtbox);
            string    expected1 = "Năm không hợp lệ";

            Assert.AreEqual(expected1, actual1);

            string actual2   = test_search.search_1(cbbox, txtbox);
            string expected2 = "select * from tblSach";

            Assert.AreEqual(expected2, actual2);
        }//1919 2119
コード例 #9
0
        public async Task <ServiceResult <PaginatedList <Book> > > SearchAsync(Search_Book search)
        {
            try
            {
                var books = from b in _db.Books select b;
                if (search.Type.HasValue)
                {
                    books = books.Where(x => x.Type == search.Type.Value);
                }
                if (search.Name.IsNotNull())
                {
                    books = books.Where(x => x.Name.Contains(search.Name));
                }
                if (search.Author.IsNotNull())
                {
                    books = books.Where(x => x.Author.Contains(search.Author));
                }
                if (search.BeganCreateDT.HasValue)
                {
                    books = books.Where(x => x.CreateDT >= search.BeganCreateDT.Value);
                }
                if (search.EndCreateDT.HasValue)
                {
                    books = books.Where(x => x.CreateDT < search.EndCreateDT.Value);
                }
                switch (search.SortType)
                {
                case "createdt_desc":
                    books = books.OrderByDescending(x => x.CreateDT);
                    break;

                case "createdt":
                    books = books.OrderBy(x => x.CreateDT);
                    break;

                case "name_desc":
                    books = books.OrderByDescending(x => x.Name);
                    break;

                case "name":
                    books = books.OrderBy(x => x.Name);
                    break;

                case "author_desc":
                    books = books.OrderByDescending(s => s.Author);
                    break;

                case "author":
                    books = books.OrderBy(s => s.Author);
                    break;

                default:
                    books = books.OrderByDescending(s => s.Id);
                    break;
                }
                var result = await PaginatedList <Book> .CreateAsync(books.AsNoTracking(), search.PageIndex, search.PageSize);

                return(ServiceResult <PaginatedList <Book> > .Success(result));
            }
            catch (Exception ex)
            {
                return(ServiceResult <PaginatedList <Book> > .Error(ex));
            }
        }