张三(以下简称张):嘿,李四,最近我在做一个校友信息管理系统,想听听你的意见。
李四(以下简称李):嗨,张,听起来很有趣。你打算用什么技术栈呢?
张:我考虑用.NET框架,特别是ASP.NET来构建这个系统。
李:好的选择。首先,我们需要设计数据库结构。你打算怎么存储校友的信息?
张:我想创建一个Alumni表,包含姓名、联系方式、毕业年份等字段。
李:很好,我们可以用SQL Server作为数据库。这是创建Alumni表的SQL语句:
CREATE TABLE Alumni (ID INT PRIMARY KEY IDENTITY, Name NVARCHAR(100), ContactInfo NVARCHAR(255), GraduationYear INT);
张:好的,接下来我们怎么用ASP.NET来展示这些数据呢?
李:我们可以创建一个Web Forms页面,然后在后台代码中使用Entity Framework来操作数据库。
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html>
<html>
<head>
<title>Alumni Information</title>
</head>
<body>
<form id="form1" runat="server">
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="ID" DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="Name" HeaderText="Name" />
<asp:BoundField DataField="ContactInfo" HeaderText="Contact Info" />
<asp:BoundField DataField="GraduationYear" HeaderText="Graduation Year" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:MyConnectionString %>" SelectCommand="SELECT * FROM Alumni"></asp:SqlDataSource>
</form>
</body>
</html>
张:这看起来很棒!最后,我们还需要添加一些功能来添加新的校友信息。
李:可以创建一个新页面,使用Form控件收集信息,并通过Entity Framework将数据保存到数据库中。
protected void btnSubmit_Click(object sender, EventArgs e)
{
using (var context = new AlumniContext())
{
var alumni = new Alumni
{
Name = txtName.Text,
ContactInfo = txtContactInfo.Text,
GraduationYear = int.Parse(txtGraduationYear.Text)
};
context.Alumni.Add(alumni);
context.SaveChanges();
}
Response.Redirect("Default.aspx");
}