gpt4 book ai didi

c# - 在 1 个 View 中添加 2 个 IEnumerable 模型

转载 作者:太空狗 更新时间:2023-10-29 18:26:42 25 4
gpt4 key购买 nike

我创建了一个在 1 个 View 中成功运行的 View

@model IEnumerable<string>
<ul>
@foreach (var fName in Model)
{
var name = fName;
var link = @Url.Content("~/Content/archives/mgamm/") + name.Replace(" ", "%20");

<li style="list-style:none; font-size:1.2em;">
<a href="@link">@name</a>
</li>
}
</ul>
@if (User.IsInRole("admin"))
{
<div>
@using (Html.BeginForm("Index", "Archives", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
<input type="File" name="file" id="file" value="Choose File" />
<button type="submit">Upload</button>
}
</div>
}

有 Controller

namespace plantationmvc.Controllers
{
public class ArchivesController : Controller
{
//
// GET: /Archives/
public ActionResult Index()
{
var path = Server.MapPath("~/Content/archives/mgamm");

var dir = new DirectoryInfo(path);

var files = dir.EnumerateFiles().Select(f => f.Name);

return View(files);
}

[HttpPost]
public ActionResult Index(HttpPostedFileBase file)
{
var path = Path.Combine(Server.MapPath("~/Content/archives/mgamm"), file.FileName);

var data = new byte[file.ContentLength];
file.InputStream.Read(data, 0, file.ContentLength);

using (var sw = new FileStream(path, FileMode.Create))
{
sw.Write(data, 0, data.Length);
}

return RedirectToAction("Index");
}
}
}

但是我想在同一页面上添加另一个这样的代码段,但内容路径不同。

如何向该页面添加另一个模型?

我只有一个 Controller 和一个 View ,所以我创建了一个 ViewModel,创建了 2 个类

namespace plantationmvc.Models
{
public class ArchivesViewModel
{
public CommModel Model1 { get; set; }
public MeetModel Model2 { get; set; }
}

public class CommModel
{
public IEnumerable<CommModel>
}
public class MeetModel
{
public IEnumerable<MeetModel>
}
}

当我尝试将其作为 @model IEnumerable<plantationmvc.Models.CommModel> 传递到我的 View 中时它说它不存在于命名空间中。

最佳答案

{
public class ArchivesViewModel
{
public IEnumerable<CommModel> Model1 { get; set; }
public IEnumerable<MeetModel> Model2 { get; set; }
}

public class CommModel
{
//properties of CommModel

}
public class MeetModel
{
//properties of Meet Model
}

}

并添加 View @model plantationmvc.Models.ArchivesViewModel

关于c# - 在 1 个 View 中添加 2 个 IEnumerable 模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31866049/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com