我有一个动作方法
public ActionResult Export(int? protocol, int? visitno)
{
//creating file here
if (!string.IsNullOrEmpty(csvData))
{
return File(new System.Text.UTF8Encoding().GetBytes(csvData), "text/csv", "Sample.csv");
}
if(no file created)
{
//need to do something
}
}
如果在方法中没有创建文件,我应该在同一页面中显示一些消息,如弹出窗口,警报或任何内容。 我尝试设置视图包并显示消息不正常...我能在这做什么?
我应该返回哪些信息?
答案 0 :(得分:3)
你可以这样做,在你的控制器动作中,
public ActionResult Export(int? protocol, int? visitno)
{
//creating file here
if (!string.IsNullOrEmpty(csvData))
{
return File(new System.Text.UTF8Encoding().GetBytes(csvData), "text/csv", "Sample.csv");
TempData["SuccessMessage"] = "Your success message here";
}
if(no file created)
{
TempData["ErrorMessage"] = "Your error message here";
}
}
然后你可以将它添加到你的视图中,(假设你使用的是bootstrap)
@if (!string.IsNullOrEmpty(TempData["ErrorMessage"].ToString()))
{
<div class="alert alert-danger"><strong>Alert! </strong>@TempData["ErrorMessage"].ToString()</div>
}
@if (!string.IsNullOrEmpty(TempData["SuccessMessage"].ToString()))
{
<div class="alert alert-success"><strong>Success! </strong>@TempData["SuccessMessage"].ToString()</div>
}