在c#中简单地将数据从控制器传递到视图

本文关键字:控制器 视图 数据 简单 | 更新日期: 2023-09-27 17:52:52

你好,我是MVC c#的新手,并且有一些问题

我有这样的控制器

public class HomeController : Controller
        {
            //
            // GET: /Home/
            public ActionResult Index()
            {
                return View();
            }
}

我想传递一些变量,比如HOME给当前视图,如何实现,如何在视图中显示?莱克阀门@what

在c#中简单地将数据从控制器传递到视图

对于一个简单的变量,将它添加到ViewBag中,然后通过@Model引用它

例如

        public ActionResult Index()
        {
            var Home = "No place like";
            ViewBag.Home = Home;
            return View();
        }
在视图:

@ViewBag.Home 

将显示您设置的内容。

当您想要添加更复杂的数据结构时,您将需要通过模型对象传递给视图。

你可以像

这样传递它
    public ActionResult Index()
    {
        var myViewModel = new MyViewModel(); // set up view model with data
        return View(myViewModel);
    }

,然后你也可以从视图中引用它!

{
    @model = MyViewModel;
}

,稍后参考

<p>@model.PropertyName</p>

为了避免头痛,如果你有少量的变量(非常小),你可以使用ViewBag.

控制器:

ViewBag.MyVarName = "My var content or whatever";

视图:

@ViewBag.MyVarName @* this prints the var *@

如果你有大量的变量,你应该使用模型