asp.net-mvc – 如何将控制器中的字符串消息传递给MVC中的视图
发布时间:2020-12-16 07:29:21  所属栏目:asp.Net  来源:网络整理 
            导读:我想通过从控制器传递到View来通过字符串变量显示字符串消息. 这是我的控制器代码: public ActionResult SearchProduct(string SearchString) { FlipcartDBContextEntities db = new FlipcartDBContextEntities(); string noResult="Search Result Not Foun
                
                
                
            | 
 我想通过从控制器传递到View来通过字符串变量显示字符串消息. 
  
  这是我的控制器代码: public ActionResult SearchProduct(string SearchString)
        {
            FlipcartDBContextEntities db = new FlipcartDBContextEntities();
            string noResult="Search Result Not Found";
            var products = from p in db.Products  select p;
            if (!String.IsNullOrEmpty(SearchString))
            {
                products = products.Where(s => s.ProductName.StartsWith(SearchString));
                return View(products);
            }
            else
            {
                return View(noResult);
            }// 请指导我. 解决方法
 将您的控制器更改为: 
  
  
  public ActionResult SearchProduct(string SearchString)
    {
        FlipcartDBContextEntities db = new FlipcartDBContextEntities();
        string noResult="Search Result Not Found";
        var products = from p in db.Products  select p;
        if (!String.IsNullOrEmpty(SearchString))
        {
            products = products.Where(s => s.ProductName.StartsWith(SearchString));
            return View(products.ToList());
        }
        else
        {
            ViewBag.Message = noResult;
            return View(new List,Product>());
        }您可以通过ViewBag将消息从服??务器传递到客户端.请注意,您必须从if / else的两侧返回相同的API,因此您不能一次传递产品列表而另一个传递字符串.在你看来: if (ViewBag.Message != null)
{
   <span>@ViewBag.Message</span>
}或者不要执行任何操作,只需根据列表中包含项目的产品列表的存在将消息放入视图中. // Model = Products returned; must make sure list returned is not null
if (Model.Count > 0)
{
   <span>Search Result not found</span>
}或者甚至作为另一种选择,您可以创建模型类: public class SearchModel
{
   public List<Product> Products { get; set; }
   public string EmptyMessage { get; set; }
}并通过您的查看方法返回: //if
return View(new SearchModel { Products = products });
//else
return View(new SearchModel { EmptyMessage = "Search result Not Found" });(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! | 
相关内容
- asp.net-mvc-3 – LabelFor不在循环中工作(for / foreach /
- 如何在经典的asp中执行多线程/后台处理
- asp.net-mvc – 如何在没有模型的情况下为@ Html.TextBox()
- asp.net-core – 如何检索当前响应体长度?
- 如何在asp.net核心中使用ViewDataDictionary和Html.Partial
- asp.net-mvc – 查看模型IEnumerable <>属性返回null(不绑
- asp.net – 如何在MVC 5中为OwinContext设置TimeOut
- asp.net – 使用string.format绑定到文本框
- ASP.NET linq选择多个连接
- ASP.NET 5/ASP.NET Core中的关注点和n层架构的分离1
推荐文章
            站长推荐
            - ASP.Net核心 – 获取帖子表格的所有数据
- 可以按需生成ASP.NET黄色死亡屏幕(YSOD)吗?
- asp.net-core – ASP.NET Core 2迁移错误.找不到
- asp.net-mvc – ASP.NET MVC将表单值传递给actio
- asp.net-web-api – 如何配置Web API 2和结构图
- asp.net-core – 运行Add-Migration时无法加载程
- asp.net-mvc-4 – Kendo UI组合框复位值
- asp.net-mvc – 具有输出参数的ExecuteSqlComman
- asp.net-mvc – 数据注释 – 如何用MVC3中的Web.
- asp.net core 系列 13 日志
热点阅读
            