从 Layout.cshtml 调用方法

Posted

技术标签:

【中文标题】从 Layout.cshtml 调用方法【英文标题】:Call a method from Layout.cshtml 【发布时间】:2021-12-27 03:13:41 【问题描述】:

我有一个关于的最佳方式的问题。

该项目在 NET 6 中。

在 Layout.cshtml 中,我有一个打开模式的按钮/链接(位于导航中)。 该模式允许用户确认(或取消)删除他的帐户。

鉴于没有绑定到 Layout.cshtml 的控制器,我怀疑调用将用于删除帐户的方法的最佳方法是什么。

创建一个仅用于删除帐户然后在确认页面上重定向的控制器是否更好?我计划进行客户端验证(在 javascript 中)和服务器验证(检查对 DB 的 API 调用是否正确删除了该帐户)。

我还阅读了有关视图组件的信息,但我认为它与此用例无关。

我应该使用局部视图吗?我想我可以将 modal 的主体放在 Partial View 中,调用该方法并执行它需要做的事情。

关于信息,我根本没有使用 Identity。删除方法必须通过 API 连接到 Filemaker 数据库。

提前致谢!

【问题讨论】:

【参考方案1】:

在我看来,我建议你可以考虑使用 JS ajax 来调用一个控制器方法(比如 web api 控制器来做一些与帐户相关的操作),然后在这个 api 中,你可以使用 Httpclient 来调用 Filemaker 数据库。

在调用ajax时,可以用js写一些逻辑来确认用户是否需要删除。

我们不建议你直接使用ajax调用Filemaker数据库的原因是调用内部api,然后调用远程数据库会更安全。

【讨论】:

以上是关于从 Layout.cshtml 调用方法的主要内容,如果未能解决你的问题,请参考以下文章

以下方法或属性 MVC、devexpress 之间的调用不明确

如何在我的 .cshtml 页面中调用 Vue 组件?

ASP.Net MVC 布局页 模板页 使用方法详细说明

模型不会从剃刀页面中的 _Layout.cshtml 页面中的 _Footer.cshtml 部分视图绑定

Razor 页面:从 _Layout.cshtml 设置 cookie

如何从 _Layout.cshtml 页面隐藏页面上的特定元素