我正在开发一个在 asp.net core 2 razor 页面上运行的项目。
我需要一个解决方案来将部分 View 或组件加载到 RAZOR 页面中,并且我还可以发送对象(某些类模型或基本字符串)。
这是我想要加载部分 View 的详细信息页面。
使用此代码:
@{
await Html.RenderPartialAsync("Shared/Partial/DeleteModal", Model.DeleteModalModel);
}
这是我内心的部分看法
<div class="modal fade" id="deleteModal" tabindex="-1" role="dialog">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header bg-red">
<h4 class="modal-title" id="defaultModalLabel">DİKKAT KAYIT SİLİNECEKTİR !</h4>
</div>
<div class="modal-body">
</div>
<div class="modal-footer">
<input type="submit" asp-page-handler="Delete" class="btn bg-red m-t-15 waves-effect" value="Sil" data-toggle="modal" data-target="#deleteModal" />
<button type="button" class="btn bg-indigo m-t-15 waves-effect" data-dismiss="modal">@Html.DisplayNameFor(model => Model.ViewModel.Buttons.Close)</button>
</div>
</div>
</div>
</div>
下面是局部 View 模型
using Microsoft.AspNetCore.Mvc.RazorPages;
namespace Q.Presentation.System.Razor.Pages.Shared.Partial
{
public class DeleteModalModel : PageModel
{
public string Message { get; set; }
}
}
我想要从 DETAIL 页面设置 Message 属性,并且想要显示在我想要加载到 DETAIL razor 页面的部分 View 上
最佳答案
找到了解决办法。当您将部分 razor View 添加到项目 VS razor 部分 View 模板时,在部分 View CSHTML 的顶部添加 @page 。
您需要删除它才能正常工作。
这是旧的局部 View CSHTML 文件
@page
@model Project.Model
<div class="modal fade" id="deleteModal" tabindex="-1" role="dialog">
......
和新的:
@model Project.Model
<div class="modal fade" id="deleteModal" tabindex="-1" role="dialog">
........
关于asp.net - 在asp.net core razor 页面上使用局部 View ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47952259/