我使用FlashHelper向用户显示Flash消息,我需要显示部分视图而不是默认的Flash消息。我怎么能这样做或者是否可能?
我需要一个这样的帮手:
Flash.Success("_FlashMessagePartial",model)
或者您建议使用哪个库?
答案 0 :(得分:0)
你不能这样使用它。如果我理解正确,您希望向用户显示类似通知的内容,并且您不希望刷新页面。正确的答案是你可以做到,但这是不正确的。您的代码看起来一团糟,您将有一个隐藏的通知字段,依此类推。这取决于你想要完成什么。例如: 我在我的布局中使用全局通知,我的剪辑看起来像这样
在布局的顶部 我放置一个if语句来检查TempData中是否存在错误消息
@if(TempData["error"])
{
// here you can visualize it well styled by some template for example
<div class="notification-error">@TempData[error]</div>
}
@if(TempData["success"])
{
// here you can visualize it well styled by some template for example
<div class="notification-error">@TempData[error]</div>
}
Then in your controller if you have something to say to the user you can
just do what you are doing like:
public ActionResult SomeAction(MyModel model)
{
if(something is not valid)
{
this.TempData["error"] user error
return this.View(model);
}
}
That case was if you need some server validation and proper message to the
user. After that option you have to set a script on your layout that removes
the error and success notifications if they exist on the page loads.
另一个选项如果你需要在客户端进行一些模型状态验证,你可以查看由viewmodel的属性驱动的js-unobtrusive验证,它会让你在客户端进入服务器之前自动检查。 / p>
第三个选项是,如果您需要其他通知,可以使用名为toastr的JS库。 Examples library url它轻巧且易于使用
希望这个答案正好解释你需要什么。