Аз съм нов потребител на MVC 3 и се опитвам да разработя уебсайт за електронна търговия. Когато създадох списък с продукти с помощта на продуктов модел, не мога да поставя частична страница за влизане, защото използвам и модел на клиента в страницата logOnPartial.
Има грешки „Моделният елемент, предаден в речника, е от тип „System.Collections.Generic.List`1[MvcApplication2.Models.Product]“, но този речник изисква моделен елемент от тип „MvcApplication2.Models.Customer“ .
Разбирам какво означава. Не знам обаче как да покажа частична страница за влизане със списък с продукти в страница? Възможно ли е? Давам ви малко моя код. Какво да правя? Благодаря ви за четенето.
//mac.cshtml page
@model IEnumerable<MvcApplication2.Models.Product>
<div id="border_frame">
@Html.Partial("_LogOnPartial")
</div>
В момента използвам модели на клиенти в страницата logOnPartial.
//logOnPartial.cshtml page
@model MvcApplication2.Models.Customer
@if (Request.IsAuthenticated)
{
<text>Welcome <strong>@User.Identity.Name</strong>!
[ @Html.ActionLink("Log Off", "LogOff", "Account") ]</text><br />
}
else
{
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
using (Html.BeginForm())
{
<div>
@Html.LabelFor(m => m.userName)
@Html.TextBoxFor(m => m.userName, new { style = "width:150px;" })
@Html.ValidationMessageFor(m => m.userName)
@Html.LabelFor(m => m.password)
@Html.PasswordFor(m => m.password, new { style = "width:150px;" })
@Html.ValidationMessageFor(m => m.password)
@Html.ValidationSummary(true, "Login was unsuccessful. Please correct the errors and try again.")
</div>
<input type="submit" class="login_button" value="Log in"/>
@Html.ActionLink("Register now", "Register", "Account", null, new { @class = "register_button" });
}
}