将图像上传到ASP.NET Core Razor页面上的数据库不起作用

时间:2020-05-26 15:25:01

标签: c# html razor

我正在一个注册页面上为用户上传图像。提交表单后,除图片外,其他所有内容都提交给数据库,我可能在html中犯了一些错误,但是我是新手,我已经找到了,但是找不到有关如何将图片上传到网站的确切解决方案。使用剃须刀页面的数据库。这是我的html文件

@page
@model LibMan.Pages.SignUpModel
@{
    ViewData["Title"] = "SignUp";
    Layout = "~/Pages/Shared/_Layout.cshtml";
}

<h1>SignUp</h1>

<div class="row">
    <div class="col-md-4">
        <form method="post">
            <div asp-validation-summary="ModelOnly" class="text-danger"></div>
            <div class="form-group">
                <label asp-for="TblUser.FirstName" class="control-label"></label>
                <input asp-for="TblUser.FirstName" class="form-control" />
                <span asp-validation-for="TblUser.FirstName" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="TblUser.LastName" class="control-label"></label>
                <input asp-for="TblUser.LastName" class="form-control" />
                <span asp-validation-for="TblUser.LastName" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="TblUser.Email" class="control-label"></label>
                <input asp-for="TblUser.Email" class="form-control" />
                <span asp-validation-for="TblUser.Email" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="TblUser.Password" class="control-label"></label>
                <input asp-for="TblUser.Password" class="form-control" />
                <span asp-validation-for="TblUser.Password" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="TblUser.BirthDate" class="control-label"></label>
                <input asp-for="TblUser.BirthDate" class="form-control" placeholder="DD/MM/YYYY" />
                <span asp-validation-for="TblUser.BirthDate" class="text-danger"></span>
            </div>
            <div class="=" form-group>
                <label asp-for="TblUser.Photo">Upload Image:</label>
                <input asp-for="TblUser.Photo" class="form-control" /><br><br>
                <input type="submit" value="Upload Image" />
                <br><br>
            </div>
            <div class="form-group">
                <input type="submit" value="Sign Up" class="btn btn-default" />
            </div>
        </form>
    </div>
</div>

<div>
    <a asp-page="Index">Back to List</a>
</div>

@section Scripts {
    @{await Html.RenderPartialAsync("_ValidationScriptsPartial");}
}

在提交前的最后一个div上,我有一个图像上传按钮,该按钮似乎没有出现问题,但不起作用。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using LibMan.Models;
using LibMan.Models.DB;

namespace LibMan.Pages
{
    public class SignUpModel : PageModel
    {
        private readonly LibMan.Models.DB.LibManContext _context;

        public SignUpModel(LibMan.Models.DB.LibManContext context)
        {
            _context = context;
        }
        public IActionResult OnGet()
        {
            return Page();
        }
        [BindProperty]
        public TblUser TblUser { get; set; }
        public async Task<IActionResult> OnPostAsync()
        {
            if (!ModelState.IsValid)
            {
                return Page();
            }
            _context.TblUser.Add(TblUser);
            await _context.SaveChangesAsync();

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

我该如何解决?我的html语法可能有误,请原谅我。 感谢您的帮助!

0 个答案:

没有答案
相关问题