Я новичок в MVC C# и все еще изучаю основы.Несколько моделей в одном представлении
Я думаю, что я близок к получению результата, но компилятору это не нравится.
Я пытаюсь передать 2 модели в основной вид. Я подумал, что я смогу использовать частичный вид для хранения одной модели, а главное - использовать другую. Например ...
// GET: /Pictures/
public ActionResult Index()
{
//Retrieve all pictures from database
var pictures = db.Pictures.ToList();
return View(pictures);
}
Pictures/Index получит модель картин и _Login бы Получать на модель пользователей
@model Project1.Models.User
<div id="login">
@if (this.Context.User.Identity.IsAuthenticated)
{
//Select username from email address cookie
@Html.ActionLink("My Account", "Index", "Users", new { id = this.Context.User.Identity.Name }, false) @: | @Html.ActionLink("Logout", "Logout", "Users")
//
}
else
{
using (Html.BeginForm("Login", "Users"))
{
<span>
@Html.LabelFor(u => u.Email)
@Html.TextBoxFor(u => u.Email)
</span>
И картины/index.cshtml следующая
@model IEnumerable<Project1.Models.Picture>
@{
ViewBag.Title = "Animal Pictures";
}
@Html.Partial("_PictureUpload") //I thought the model would be local to _PictureUpload and then be passed?
<div id="gallery">
@foreach (var picture in Model)
{
@picture.File
}
</div>
@Html.Partial("_PictureUpload")
Но, похоже, столкновение с Picture.cs в Html.Partial ("_ PictureUp load ") и Users.cs в Html.Partial (" _ Login ")
Как можно иметь модель изображения и пользователя в одном представлении? Надеюсь, я достаточно подробно объяснил свою проблему.
Пожалуйста, держите его как можно проще, я просто пытаюсь понять, как это работает.
где в вашем 'picture/index.cshtml' вы вызываете свой логин? Какую модель занимает «Pictureupload»? – Jonesopolis
На самом деле его вызывают в _Layout.cshtml, так как я хочу, чтобы вход на всех страницах. Я думаю, что на самом деле, думая об этом, загрузка изображения займет класс пользователя и класс изображения. - PSEUDO CODE - Если НЕ вошел в систему, войдите в систему (используйте класс пользователя), если он включен в систему. Класс изображения (чтобы принимать данные изображения) Правильно ли это делается? – Ultigma
проверить мой ответ – Jonesopolis