У меня есть макет страницы со следующимasp.net MVC не оказывающие действия
_app.cshtml
<div id="top_right">
@{ Html.Partial("_LogOnPartial"); }
</div>
Бревно на парциальное содержит
_LogOnPartial.cshtml
@{
Layout = null;
}
@if (Request.IsAuthenticated)
{
Html.RenderAction("Details", "Account");
}
else
{
Html.RenderAction("LogOn", "Account");
}
и оказывать им метод действия, ожидая увидеть является
AccountController.cs
public class Account
{
public PartialViewResult LogOn()
{
return PartialView();
}
}
частичный вид входа в систему, который будет возвращен на счет/LogOn является
LogOn.cshtml
@model Presentation.Models.LogOnModel
<div id="login">
@Html.ValidationSummary()
<h2>Start by Loggin in</h2>
@using (Html.BeginForm("LogOn", "Account"))
{
@Html.Hidden("returnUrl", Request.Url.PathAndQuery)
<table width="100%" border="0" cellspacing="0" cellpadding="5">
<tr>
<td>
<span class="bluey">Username:</span><br />
@Html.TextBoxFor(m => m.UserName, new {tabindex = "1", Class = "field"})
@Html.ValidationMessageFor(m => m.UserName, "*")
</td>
<td>
<span class="bluey">Password:</span><br />
@Html.TextBoxFor(m => m.Password, new {tabindex = "2", Class = "field"})
@Html.ValidationMessageFor(m => m.Password, "*")
</td>
</tr>
<tr>
<td>
<input name="login" type="submit" value="Submit" class="input_btn" tabindex="3" />
</td>
<td>@Html.CheckBoxFor(m => m.RememberMe) @Html.LabelFor(m => m.RememberMe) <span class="bluey"> | </span> @Html.ActionLink("Forgot Password?", "Password", "User")></td>
</tr>
</table>
}
</div>
Я прорисовал поток, и я вижу, что он попал тин
Html.RenderAction("LogOn", "Account")
и возвращение частичный вид оттуда однако, когда я просмотреть страницу ни один из HTML частичного зрения (LogOn.cshtml) оказывается, это даже не присутствует в источнике.
Я пропустил что-то принципиальное здесь, есть ли лучший способ достичь этого?
, так что я отследил его до того, как я называю частичный вид, изменяя его на @ Html.Partial, кажется, делает его правильно, по какой-либо причине, почему другой не отображает содержимое? –