📘 第7章:ASP.NET Web Pages – 对象(Objects)


🧱 什么是对象?

对象(Object)是编程中的一个核心概念,它代表“某种东西”,由**属性(数据)方法(行为)**组成。

在 ASP.NET Web Pages 的 Razor 中,C# 是主要语言,因此你可以:

  • 使用 C# 创建对象(如 DateTimeList<>
  • 自定义类并实例化对象
  • 访问对象的属性和方法

🛠 使用内置对象示例

示例:使用 DateTime

@{
    var now = DateTime.Now;
}

<p>当前时间是:@now</p>
<p>年份是:@now.Year</p>

示例:使用 List<string>

@{
    var fruits = new List<string> { "苹果", "香蕉", "橘子" };
}

<ul>
@foreach (var fruit in fruits) {
    <li>@fruit</li>
}
</ul>


🧰 自定义对象和类

你可以在 Razor 页面中定义自己的类和对象。类通常用于封装数据和功能。

示例:定义一个类并创建对象

@functions {
    public class Person {
        public string Name { get; set; }
        public int Age { get; set; }

        public string Greet() {
            return $"你好,我是{Name},今年{Age}岁。";
        }
    }
}

@{
    var p = new Person { Name = "小李", Age = 25 };
}

<p>@p.Greet()</p>

🔹 @functions 块中可以定义类、方法等 C# 元素
🔹 可以通过对象实例访问属性和方法,如 p.Namep.Greet()


📦 Razor 页面常用对象

对象名描述示例
Request获取表单或URL中的用户输入Request.Form["name"]
Response发送输出到浏览器Response.Write("Hello")
Server提供辅助方法(如URL编码)Server.UrlEncode("参数")
Session存储用户会话信息Session["user"] = "admin"
WebSecurity处理登录/注册等功能WebSecurity.Login()

🔄 对象与 JSON 的交互

你还可以将对象序列化为 JSON,或从 JSON 构建对象:

@{
    var person = new { Name = "张三", Age = 30 };
    var json = Json.Encode(person); // 转换为 JSON 字符串
}

<p>JSON 表示:@json</p>


🎯 为什么要用对象?

  • 结构清晰:便于模块化和维护
  • 复用性强:定义一次,重复使用
  • 代码整洁:避免重复逻辑

🌐 出站链接推荐

📚 参考资料

  1. Microsoft Docs – ASP.NET Web Pages Razor Syntax
  2. W3Schools – C# Classes and Objects
  3. 《ASP.NET Web Pages Unleashed》— 面向对象章节