コード例 #1
0
ファイル: Edit.cshtml.cs プロジェクト: boraxpr/SeniorLibrary
        public async Task <IActionResult> OnGetAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Entrying = await _context.Entrying.FirstOrDefaultAsync(m => m.ID == id);

            if (Entrying == null)
            {
                return(NotFound());
            }
            return(Page());
        }
コード例 #2
0
        public async Task <IActionResult> OnPostAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Entrying = await _context.Entrying.FindAsync(id);

            if (Entrying != null)
            {
                _context.Entrying.Remove(Entrying);
                await _context.SaveChangesAsync();
            }

            return(RedirectToPage("./Index"));
        }
コード例 #3
0
        //id sent from request index is an entry id !!
        public async Task <IActionResult> OnGetAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }
            // get entry by using id sent from request index
            Entrying = await _context.Entrying.FirstOrDefaultAsync(m => m.ID == id);

            // book need to be found by name in entrying
            Book = await _context.Book.FirstOrDefaultAsync(m => m.Name.Contains(Entrying.ProjectName));

            if (Book == null)
            {
                return(NotFound());
            }
            return(Page());
        }
コード例 #4
0
        public async Task <IActionResult> OnPostAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }
            // get entry by using id sent from request index
            Entrying = await _context.Entrying.FirstOrDefaultAsync(m => m.ID == id);

            // book need to be found by name in entrying
            Book = await _context.Book.FirstOrDefaultAsync(m => m.Name.Contains(Entrying.ProjectName));

            if (Book != null)
            {
                byte[] contents = Book.DataFiles;

                string username = User.Identity.Name;

                var Stat = await _context.Stat.FirstOrDefaultAsync(stat => stat.userName == username);

                if (Stat == null)
                {
                    var stat = new Stat();
                    stat.userName        = User.Identity.Name;
                    stat.DownloadedBooks = Book.Name;
                    await _context.Stat.AddAsync(stat);
                }
                else
                {
                    if (!Stat.DownloadedBooks.Contains(Book.Name))
                    {
                        Stat.DownloadedBooks += "," + Book.Name;
                    }
                }
                Book.downloadCount += 1;
                await _context.SaveChangesAsync();

                return(File(contents, "application/pdf"));
            }

            return(RedirectToPage("./Index"));
        }