为什么返回局部视图会影响我的样式应用于我的局部视图?

Why does returning partial view affect my styles from being applied to my partial view?

所以,

我有关于何时显示某个局部视图的布尔值,我注意到我的一个局部视图正确显示了正确的 CSS 样式和 类。 但是,我的其他部分视图显示不正确(我在控制台中也没有错误),我已将其缩小到这行代码,看看这有什么不同:

 @Html.ActionLink(@Culture.GetString("ResetPasswordViaQuestionAnswer"), "GetUserName", "Account", new { style = "color:black; background: none;" }) 

    <a href="@Url.Action("GetUserName", "Account")">@Culture.GetString("ResetPasswordViaQuestionAnswer")</a>

每当我使用@Html.ActionLink 或@Url.Action 将我的操作调用到return 我的局部视图时,CSS 样式就会中断。我的 类 中的 None 已正确添加到我的输入和表单元素中。

上面调用这个动作:

        [AllowAnonymous]
        public ActionResult GetUserName()
        {
            LoginModel loginModel = new LoginModel();
            GetUserName getUserName = new GetUserName();
            loginModel.getUserName = getUserName;
            loginModel.DisplayResetPasswordDialog = true; 
            return PartialView("Login", loginModel);
        }

然后转到我的登录部分视图,其中 div 包含:

@if(Model.DisplayChangePasswordDialog == true){
                    @Html.Partial("PasswordExp",new ViewModels.PasswordChangeViewModel())
               }else if (Model.DisplayResetPasswordDialog == true){
                    @Html.Partial("ResetUserPassword", new ViewModels.GetUserName())
               }else{
                     @Html.Partial("_login", Model)
            }

我上面所做的一些事情打破了 CSS 样式和 类 附加到我的输入。视图已加载,但视图加载不正确。未应用任何样式或 类。

为什么?

您不能(或不应该)重定向到局部视图,因为您不会获得包含您的 css 和 js 的 _Layout 文件。

相反,您应该重定向到包含您的部分视图的视图。该视图应该引用您的布局文件。