Asp.net mvc 4 在视图中显示目录列表

Asp.net mvc 4 在视图中显示目录列表,asp.net-mvc-4,c#-4.0,entity-framework-5,Asp.net Mvc 4,C# 4.0,Entity Framework 5,我尝试在视图中创建目录列表。我的模型是: public class UploadModel { [Required] [Display(Name = "FormToUpload", ResourceType = typeof(Resources.Entity.Form))] public HttpPostedFileBase UploadData { get; set; } public string[] Director

我尝试在视图中创建目录列表。我的模型是:

public class UploadModel
    {

        [Required]
        [Display(Name = "FormToUpload", ResourceType = typeof(Resources.Entity.Form))]
        public HttpPostedFileBase UploadData { get; set; }
        public string[] Directories { get; set; }


    }
这是控制器:

[HttpGet]
        public ActionResult UploadFile(string designId)
        {
             UploadModel model = new UploadModel();
            string customerSchema = SfsHelpers.StateHelper.GetSchema();
            TemplateLibraryEntry entry = GetTemplateLibraryEntry(designId, customerSchema);
            var path = Path.Combine(Server.MapPath("~/"), entry.FilePath);

            model.Directories = Directory.GetFiles(path, "*", SearchOption.AllDirectories);
            return View(model);
        }
这是我的观点:

<div class="form-group">
                                @foreach (var item in Model.Directories )
                                {
                                    @Html.CheckBoxFor(model => true, item)
                                    @Html.LabelFor(model => model.Directories)

                                }
在视图中,我使用了新的UploadViewModel:@model SenecaFormsServer.Areas.Dashboard.Models.UploadViewModel

对于复选框:

<div class="form-group">
                                @foreach (var item in Model.Directories )
                                {
                                    @Html.CheckBoxFor(model => true, item)
                                    @Html.LabelFor(model => model.Directories)

                                }                              



                            </div>
但我仍然得到了错误:

模板只能用于字段访问、属性访问、一维数组索引或单参数自定义索引器表达式

如果我尝试我的观点:

<div class="form-group">
                                @foreach (var item in Model.Directories )
                                {
                                    @*@Html.CheckBoxFor(model => true, item)*@
                                    @Html.CheckBoxFor(m => m.Directories, new { @checked = "checked" });
                                    @Html.LabelFor(model => model.Directories)

                                }                                    


                            </div>

@foreach(Model.Directories中的var项)
{
@*@CheckBoxFor(model=>true,item)*@
@CheckBoxFor(m=>m.目录,新的{@checked=“checked”});
@LabelFor(model=>model.Directories)
}                                    
我得到这个错误:
无法将类型“string[]”隐式转换为“bool”

Thank you的可能重复项。我更新了我的帖子
[HttpGet]
        public ActionResult UploadFile(string designId,UploadModel model)
        {
             UploadModel model = new UploadModel();

            UploadViewModel uploadViewModel = new UploadViewModel(model);
            string customerSchema = SfsHelpers.StateHelper.GetSchema();
            TemplateLibraryEntry entry = GetTemplateLibraryEntry(designId, customerSchema);
            var path = Path.Combine(Server.MapPath("~/"), entry.FilePath);

            //model.Directories = Directory.GetFiles(path, "*", SearchOption.AllDirectories);
            uploadViewModel.Directories = Directory.GetFiles(path, "*", SearchOption.AllDirectories);

            return View(uploadViewModel);
        }
<div class="form-group">
                                @foreach (var item in Model.Directories )
                                {
                                    @*@Html.CheckBoxFor(model => true, item)*@
                                    @Html.CheckBoxFor(m => m.Directories, new { @checked = "checked" });
                                    @Html.LabelFor(model => model.Directories)

                                }                                    


                            </div>