2013-02-22 114 views
3

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

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

我想知道在ActionResult中使用标准INotifier.Error()是可能的。

回答

0

没有。默认通知程序不适用于AJAX请求。它做什么,它将通知排入临时集合中。排队的通知随后在请求结束时写入客户端 - 推入Layout.Messages区域。

在你的情况下,最好实施你自己的INotifier,它将遵循所需的逻辑。这是一个非常简单的接口来实现,所以它并不是那么多的工作。

-1

我不需要实施INotifier,我只是摆在我PartialView这样的:

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

现在的消息主要区域(用于主题的Layout.cshtml)没有渲染,但可能是放置在PartialView的任何位置,例如在受影响的表格下。