如何在自定义控制器操作中显示本机 DNN 弹出窗口?

How to display the native DNN popup in a custom controller action?

我在 Visual Studio 中使用 MVC 模板创建了一个 DNN 模块。该模板创建了一个带有 "Delete"、"Edit" 和 "Index" 操作的 ItemController。 "Edit" 操作尤其会显示用于编辑模型属性的弹出窗口。

我设法创建了另一个具有索引和编辑操作的控制器,并且编辑操作会像在 ItemController 中一样显示弹出窗口。

然后我尝试创建另一个操作(比方说 "Add"),我希望它使用弹出显示。我试图在 .dnn 文件中添加一个新的模块操作,其中包含 <supportsPopUps>True</supportsPopUps> 元素,但它不起作用。

我该怎么做?

我发现在模板示例中,link 在 .cshtml 文件中打开弹出窗口:

<a href="@Url.Action("Edit", "Item", new {ctl = "Edit", itemId = item.ItemId})">@Dnn.LocalizeString("EditItem")</a>

指定路由值ctl = "Edit"。这个参数好像是控制弹窗显示的,虽然我不明白它是如何工作的。