例外:“输入不是有效的Base-64字符串,因为它包含非基本64字符

时间:2014-10-26 20:04:16

标签: c# asp.net-mvc entity-framework base64

我想使用带有实体框架的MVC将用户配置文件保存到数据库中,包括图像文件。

我写了下面的代码,我总是得到这个例外:

  

“输入不是有效的Base-64字符串,因为它包含非基数64   字符,两个以上的填充字符或非空白字符   填充字符中的字符“。

你可以帮我解决这个问题吗?谢谢。

我的代码:

用户控制器:

public ActionResult AddUser()
{
    return View();
}

[HttpPost]
public ActionResult AddUser(User u, HttpPostedFileBase file)
{
    PROJECTDBEntities context = new PROJECTDBEntities();

    if (file != null && file.ContentLength > 0)
    {
        if (ModelState.IsValid)
        {
            u.image = new byte[file.ContentLength];
            file.InputStream.Read(u.image, 0, file.ContentLength);
            context.Users.Add(u);
            context.SaveChanges();

        }
    }
    return View("GetUser",context.Users);
}

AddUser的观点:

@using (Html.BeginForm("AddUser","User",FormMethod.Post,new { enctype = "multipart/form-data" }))
{
    <p>UserNo: </p> @Html.TextBoxFor(a=>a.userNo)
    <p>Name: </p>@Html.TextBoxFor(a=>a.name)
    <p>Surname: </p>@Html.TextBoxFor(a => a.surname)
    <p>Email: </p>@Html.TextBoxFor(a=>a.email)
    <p>Image: </p> <input type="file" name="image"/>
    <input type="submit" value="Save" />
}

模型:(实体框架,我在视图中使用这个EF强类型模型)

public int id { get; set; }
public Nullable<int> userNo { get; set; }
public string name { get; set; }
public string surname { get; set; }
public string email { get; set; }
public byte[] image { get; set; }

0 个答案:

没有答案