3

我正在使用 ajax 请求在我的项目中获取 PartialViews 之一。我想通过 INotifier 传递一条消息。Cuttently 我正在使用 HttpStatusCodeResultreturn new HttpStatusCodeResult(204, "Message");传递有关错误的信息,但不令人满意的解决方案。

 $(this).load($(this).attr("href"), function (response, status, xhr) {
        if (xhr.status == 204) {
            // show message
        }
    });

我想知道这可以通过INotifier.Error()在 ActionResult 中使用标准来实现。

4

2 回答 2

0

没有。默认通知器不适用于 AJAX 请求。它的作用是将通知排队在一个临时集合中。然后在请求结束时将排队的通知写入客户端 - 推送到Layout.Messages区域。

在您的情况下,最好INotifier按照所需的逻辑实现您自己的。这是一个实现起来非常简单的接口,因此实际上并没有那么多工作。

于 2013-02-22T21:34:00.093 回答
-1

我不需要实现 INotifier,我只在我的 PartialView 中放置了这个:

@Display(WorkContext.Layout.Zones["Messages"])

现在消息不会在主区域中呈现(在使用主题的 Layout.cshtml 中),但可以放置在 PartialView 中的任何位置,例如在受影响的表下。

于 2016-03-23T09:23:51.093 回答