首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在ASP.NET MVC2上上传文件?

如何在ASP.NET MVC2上上传文件?
EN

Stack Overflow用户
提问于 2010-09-13 12:26:12
回答 1查看 4.2K关注 0票数 2

我正在开发一个多语言漫画网站,所有插入的漫画必须用英语和葡萄牙语。

我成功地管理了多个标题,这样做:

ComicViewModel.cs:

代码语言:javascript
复制
public class ComicViewModel
{
    [Key]
    public int Id { get; set; }

    [Required(ErrorMessage="A data não pode ficar em branco.")]
    [DisplayName("Data")]
    public DateTime Date { get; set; }

    public IList<LocalizedTextViewModel> Titles { get; set; }
}

LocalizedTextViewModel.cs:

代码语言:javascript
复制
public class LocalizedTextViewModel
{
    public CultureViewModel Culture { get; set; }

    [Required(ErrorMessage = "Este campo não pode ficar em branco.")]
    public string Text { get; set; }
}

CultureViewModel.cs:

代码语言:javascript
复制
public class CultureViewModel
{
    public int Id { get; set; }
    public string Abbreviation { get; set; }
    public string Name { get; set; }

    public CultureViewModel() { }

    public CultureViewModel(Database.Culture culture)
    {
        Id = culture.Id;
        Abbreviation = culture.Abbreviation;
        Name = culture.Name;
    }
}

问题是我不知道如何管理漫画图片上传。我需要上传一个以上的图片,每一个参考它的语言。

有人有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-09-13 14:23:40

下面是一个上传多个文件的示例:

Html:

代码语言:javascript
复制
<% using (Html.BeginForm("Upload", "File", FormMethod.Post, new { enctype = "multipart/form-data" }))
{%><br />
    <input type="file" name="files" id="file1" size="25" />

    <input type="file" name="files" id="file2" size="25" /> 

    <input type="submit" value="Upload file" />      
<% } %>   

财务主任:

代码语言:javascript
复制
[HttpPost]
public ActionResult Upload()
{
    foreach (string inputTagName in Request.Files)
    {
        HttpPostedFileBase file = Request.Files[inputTagName];
        if (file.ContentLength > 0)
        {
            string filePath = Path.Combine(HttpContext.Server.MapPath("../Uploads")
                    , Path.GetFileName(file.FileName));
            file.SaveAs(filePath);
        }
    }

    return RedirectToAction("Index");
}

更新:获取有关上传的文件的一些信息

下面的示例演示如何获取提交的HttpPostedFileBase文件的名称/类型/大小/扩展名。

代码语言:javascript
复制
string filename = Path.GetFileName(file.FileName);

string type = file.ContentType;

string extension = Path.GetExtension(file.FileName).ToLower();

float sizeInKB = ((float)file.ContentLength) / 1024;

假设您上传了文件somePicture.jpeg,输出将是。

代码语言:javascript
复制
filename  > somePicture.jpeg
type      > image/jpeg
extension > jpeg
sizeInKB  > // the file size.
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3700340

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档