如何将我的User对象数据传递给ASPX页面?

时间:2013-07-14 12:27:29

标签: c# asp.net asp.net-mvc

我只是想在ASP.net(ASPX)中尝试做一些非常简单的事情,它似乎并没有起作用。

我有以下类/模型,视图和控制器:

Users.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace ASPWebsite.Models
{
    public class Users
    {
        private string firstName;
        private string lastName;

        public Users(string firstName, string lastName)
        {
            this.firstName = firstName;
            this.lastName = lastName;
        }

        public string GetFirstName()
        {
            return this.firstName;
        }

        public string GetLastName()
        {
            return this.lastName;
        }
    }
}

的Index.aspx

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<ASPWebsite.Models.Users>" %>

<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
    Index
</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">

<h2>Index</h2>

<h2><%Model.GetFirstName();%></h2>

</asp:Content>

HomeController.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

using ASPWebsite.Models;

namespace ASPWebsite.Controllers
{
    public class HomeController : Controller
    {
        public ActionResult Index()
        {
            ViewBag.Message = "Welcome to ASP.NET MVC!";

            var user = new Users("foo", "bar");

            return View(user);
        }

        public ActionResult About()
        {
            return View();
        }
    }
}

正如您所看到的,我创建了一个名为foo bar的用户并将其传递给视图,但是当我运行它时,它并没有显示名称。这有什么问题?

1 个答案:

答案 0 :(得分:3)

尝试<h2><%: Model.GetFirstName() %></h2>