Đây là những gì tôi đã đưa ra như một giải pháp để cho phép người dùng liên kết với các hệ thống xác thực được xây dựng trước.
Mỗi khu vực của tôi có một phiên bản của tệp _LoginPartial.cshtml.
Tôi có thể có thể khiến ứng dụng sử dụng một phiên bản duy nhất của tệp, tuy nhiên tôi vẫn gặp lỗi khi cố gắng sử dụng một phần đăng nhập.
Nó chỉ là một sửa đổi nhỏ cho đăng nhập ban đầu được tạo, nhưng nó dường như hoạt động tốt khi được sử dụng trong các khu vực cụ thể.
Đây là mã được sử dụng trong tất cả chúng:
@if (Request.IsAuthenticated)
{
<text>
Hello, @Html.ActionLink(User.Identity.Name, "Manage", "Account", new { area = "" }, htmlAttributes: new { @class = "username", title = "Manage" })!
@using (Html.BeginForm("LogOff", "Account", new { area = "" }, FormMethod.Post, new { id = "logoutForm" }))
{
@Html.AntiForgeryToken()
<a href="javascript:document.getElementById('logoutForm').submit()">Log off</a>
}
</text>
}
else
{
<ul>
<li>@Html.ActionLink("Register", "Register", "Account", new { area = "" }, htmlAttributes: new { id = "registerLink" })</li>
<li>@Html.ActionLink("Log in", "Login", "Account", new { area = "" }, htmlAttributes: new { id = "loginLink" })</li>
</ul>
}