Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc mvc-4在视图中生成列表_Asp.net Mvc_List_View - Fatal编程技术网

Asp.net mvc mvc-4在视图中生成列表

Asp.net mvc mvc-4在视图中生成列表,asp.net-mvc,list,view,Asp.net Mvc,List,View,我在正确生成视图方面有点问题 I get错误:模型不包含“GetEnumerator”的公共定义 我曾尝试将我的泛型列表更改为IEnumerable列表,但在代码中又出现了一些我无法消除的错误,我不确定是否必须以某种方式将其添加到UploadedFile类中 using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace Mvc_fileUploader.Models

我在正确生成视图方面有点问题

I get错误:模型不包含“GetEnumerator”的公共定义

我曾尝试将我的泛型列表更改为IEnumerable列表,但在代码中又出现了一些我无法消除的错误,我不确定是否必须以某种方式将其添加到UploadedFile类中

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace Mvc_fileUploader.Models
{
    public class UploadedFile
    {
        public string Name { get; set; }
        public string Path { get; set; }

        public long Size { get; set; }

    }
}
控制器:

[HttpGet]
        public ActionResult UploadedFiles()
        {
            var uploadedFiles = new List<UploadedFile>();

            var files = Directory.GetFiles(Server.MapPath("~/fileUploads/"));

            foreach (var file in files)
            {
                var fileInfo = new FileInfo(file);

                var uploadedFile = new UploadedFile();

                uploadedFile.Name = Path.GetFileName(file);
                uploadedFile.Size = fileInfo.Length;
                uploadedFile.Path = ("~/fileUploads/") + Path.GetFileName(file);

                uploadedFiles.Add(uploadedFile);
            }

            return View();
[HttpGet]
public ActionResult UploadedFiles()
{
var uploadedFiles=新列表();
var files=Directory.GetFiles(Server.MapPath(“~/fileUploads/”);
foreach(文件中的var文件)
{
var fileInfo=新文件信息(文件);
var uploadedFile=新的uploadedFile();
uploadedFile.Name=Path.GetFileName(文件);
uploadedFile.Size=fileInfo.Length;
uploadedFile.Path=(“~/fileUploads/”)+Path.GetFileName(文件);
uploadedFiles.Add(uploadedFile);
}
返回视图();
视图:

@model Mvc\u fileUploader.Models.UploadedFile
@{
ViewBag.Title=“UploadedFiles”;
}
上载的文件
名称
大小
预览
@foreach(模型中的var文件)
{
@文件名
}

github上的源代码:

需要将视图的模型设置为

IEnumerable<Mvc_fileUploader.Models.UploadedFile>
IEnumerable
[编辑]

您没有返回模型。在控制器操作中,将您创建的列表添加到View()调用中,例如:

[HttpGet]
        public ActionResult UploadedFiles()
        {
            var uploadedFiles = new List<UploadedFile>();

            var files = Directory.GetFiles(Server.MapPath("~/fileUploads/"));

            // do stuff

            return View(uploadedFiles);
[HttpGet]
public ActionResult UploadedFiles()
{
var uploadedFiles=新列表();
var files=Directory.GetFiles(Server.MapPath(“~/fileUploads/”);
//做事
返回视图(上传文件);

需要将视图的模型设置为

IEnumerable<Mvc_fileUploader.Models.UploadedFile>
IEnumerable
[编辑]

您没有返回模型。在控制器操作中,将您创建的列表添加到View()调用中,例如:

[HttpGet]
        public ActionResult UploadedFiles()
        {
            var uploadedFiles = new List<UploadedFile>();

            var files = Directory.GetFiles(Server.MapPath("~/fileUploads/"));

            // do stuff

            return View(uploadedFiles);
[HttpGet]
public ActionResult UploadedFiles()
{
var uploadedFiles=新列表();
var files=Directory.GetFiles(Server.MapPath(“~/fileUploads/”);
//做事
返回视图(上传文件);
当只有一个模型被传递到视图时使用它

IEnumerable<Mvc_fileUploader.Models.UploadedFile>
IEnumerable
当只有一个模型被传递到视图时使用它

IEnumerable<Mvc_fileUploader.Models.UploadedFile>
IEnumerable

你的get方法在哪里?你的get方法在哪里?酷,我离它更近了一步。它现在在第16行中断:@foreach(模型中的var文件)对象引用未设置为对象的实例。模型包含null。我不知道如何解决它。?太好了。最终,当我有一个视图时,我认为控制器中的所有内容都会自动返回。返回的唯一默认值是要使用的视图的名称,也可以使用其中一个覆盖来覆盖s of
View(“usethis”)
。返回数据而不将其传递给View()的另一种方法是将数据添加到ViewBag中,并从视图本身访问它。这让我更近了一步。它现在在以下位置断开:第16行:@foreach(模型中的var文件)对象引用未设置为对象的实例。模型包含null。我不知道如何解决它。?太好了。最终,当我有一个视图时,我认为控制器中的所有内容都会自动返回。返回的唯一默认值是要使用的视图的名称,也可以使用其中一个覆盖来覆盖
View(“usethis”)
。返回数据而不将其传递给View()的另一种方法是将数据添加到ViewBag中,并从视图本身访问数据。