使用 C# 和 .NET 创建简单的会议室预订系统:第一部分






4.17/5 (12投票s)
这是一个完整的教程系列,从安装 Visual Studio 和其他工具到部署和运行应用程序(会议室预订系统)。它从最简单的 WebForms 开始,但我们将使用 Razor,然后是 Blazor MVC 风格的视图来重做它。
引言
这是一个完整的教程系列,从安装 Visual Studio 和其他工具到部署和运行应用程序(会议室预订系统)。这将帮助您将学校里学到的知识与更新的概念和工具相结合,应用到实际应用中。
适用人群
您已经毕业,或者可能还在学习,但当您开始尝试构建东西并在 Google 上搜索时(顺便说一句,这是您应该做的第一件事),您会发现大多数教程和书籍使用的都是您尚未学好_的新技术。这可能会导致更多的困惑和沮丧。一种方法是清空您的思绪(忘掉您已有的知识)并用这些新概念重新开始,然后将它们与您之前学到的东西联系起来(我就是这样做的)。但还有另一种方法,从您已知的内容开始,并在其上进一步发展,了解为什么需要新的方法,并开始将它们用于新项目。这正是本教程的目的。我们将从基本的 SQL 连接和 HTML 界面开始,逐步探索 MVC、ORM 和面向对象编程等概念,同时构建一个会议预订系统。我将为每个部分提供源代码。
本教程从 WebForms 开始,以帮助您连接到您可能了解的 WinForms(来自 VB 或 C# 类)。但之后,我们将使用 MVC Razor,然后是 Blazor Views 等最新技术重做同样的事情。
听起来不错?我们开始吧。
本教程适合具有基础编程知识和 SQL 知识的人。
第一部分:运行您的第一个 Web 应用程序
如果您习惯于构建网站,请阅读本文以了解网站和 Web 应用程序之间的区别。
1)设置环境
1.1 安装 Visual Studio
首先要确保您拥有正确的环境。
您安装了 Visual Studio 吗?(如果安装了,请跳过此步骤。)
前往https://visualstudio.microsoft.com/downloads/下载最新版本的社区版。(撰写本文时是 2019 版)。它将只下载在线安装程序(小于 2 MB),然后您可以选择所需的功能,它会自动下载并安装。微软现在推荐这种方式,并在 2017 年停止提供完整的下载包(ISO 文件)。但我知道如果您 PC 上的互联网连接不快,这会很困难(您需要下载 5-40 GB,具体取决于您在安装程序中选择的功能)。如果您不习惯这样做,可以按照此链接在其他有良好互联网连接的 PC 上创建离线缓存,然后将文件传输到您的 PC 并离线安装。
基本上,您需要运行 cmd
命令(在下载 vs_community 的目录中)。
vs_community.exe — layout c:\vslayout — add Microsoft.VisualStudio.Workload.ManagedDesktop
— add Microsoft.VisualStudio.Workload.NetWeb — add Component.GitHub.VisualStudio
— includeOptional — lang en-US
并将文件传输到您的 PC(c:\vslayout)并运行
c:\vslayout\vs_community.exe — add Microsoft.VisualStudio.Workload.ManagedDesktop
— add Microsoft.VisualStudio.Workload.NetWeb — add Component.GitHub.VisualStudio
–includeOptional
令人难过的是,微软决定不再使用 ISO 文件了。(他们说他们想让每个安装程序都保持最新,但仍然……)您也可以尝试从朋友那里获取 Visual Studio 的非官方 ISO(约 48 GB)。我不确定是否能合法地提供链接。
安装 SQL Server 和 Management Studio(如果您已安装,请跳过)。
由于我们将使用 SQL Server 作为我们的数据库,您还应该拥有 SQL Server Express,并且对于手动数据库创建和修改,您将需要 SQL Server Management Studio。
这是最新链接
SQL Server Management Studio18.0
SQL Server Express Edition 2017 ……这是一个 5 MB 的在线安装程序,但您可以通过按“下载媒体”按钮下载完整安装程序,并将该文件复制到另一台 PC。
1.2 创建项目并开始使用 WebForms
但是为什么在 2019 年还要用 WebForms?
是的,WebForms 和 aspx 页面这些天已经过时了。
但是,如果您来自 Visual Basic 和 C# Windows Forms 背景(很可能您在学校学过),您会发现 WebForms 非常熟悉。代码隐藏、设计视图、拖放和事件驱动模型等概念非常相似。在本系列的后续内容中,我们将以 MVC 的方式重做该应用程序,以便您能够真正连接并理解发生了什么变化以及关于 MVC 的所有炒作。
打开 Visual Studio,选择“新建项目”,然后在“Web”类别中选择 ASP.NET Web 应用程序。
所以只需运行应用程序,看看微软希望我们看到的默认模板。
注意元素:主页(default.aspx),页眉(顶部菜单)代码位于(site.master
)中,稍后我们将讨论主布局。随意玩弄这些文件,大多数情况下,您无需重新运行应用程序即可看到更改。(只需在浏览器中刷新即可。)
如果应用程序正在运行,请停止它,然后让我们显示动态内容。
打开 default.aspx 并确保您处于源代码视图(底部查看)。
更改
<h1>ASP.NET </h1>
to
<h1>Hello <% =Name%></h1>
<%
是 ASP.NET 到服务器代码的转义运算符,如果您知道 PHP 语言,它曾经是 <? /?>
。它基本上会执行块内的任何内容,并渲染结果(如果有)与 HTML。
Name
是您需要在代码隐藏中创建的变量,= 键在这里很重要,它表示返回 Name
变量以进行显示。所以我们来创建这个变量。
按 F7,或者在解决方案资源管理器中,找到文件 default.aspx,单击展开图标,然后打开文件 default.aspx.cs。
添加一个变量 Name
并像这样赋值
public partial class _Default : Page
{
public string Name { get; set; } = “Abebe”;
protected void Page_Load(object sender, EventArgs e)
{
}
}
现在,如果您运行,您将看到 Hello Abebe
文本。
好的,让我们动态更改文本。
切换到设计视图,在左侧面板中,您将看到工具。展开并选择“按钮”。将按钮拖放到页面上。
双击它,您将被重定向到代码隐藏文件,并注意创建了一个新函数(事件处理程序)。在函数内部,让我们将 Name
文本分配给另一个。
protected void Button1_Click(object sender, EventArgs e)
{
Name = “Kebede”;
}
现在运行应用程序并单击按钮,文本 Abebe
将更改为 Kebede
。明白了吗?
这应该让您了解如何通过代码隐藏来控制 UI 元素。您会注意到 WebForms 与 WindowsForms 几乎相同。
切换回设计视图,让我们从工具箱拖放 Label
元素。单击您刚刚拖动的新的标签项,然后在属性窗口(右侧面板)(如果看不到,请按 F4),您会找到诸如 Text
和 ID
之类的属性,将 Text
更改为“您的幸运数字
”。
拖动另一个按钮,双击它,然后在处理程序函数中
protected void Button2_Click(object sender, EventArgs e)
{
Label1.Text = new Random().Next().ToString();
}
如果您运行应用程序并按下第二个按钮,您将在 label
元素上看到随机数字显示。
基本上,当您将元素拖放到页面上时,可以通过元素 ID 访问的字段会自动创建,您可以在代码隐藏文件中访问和设置元素的任何属性。很酷,这与 WindowsForms 相同。
尝试与其他组件交互并探索更多。例如,尝试更改第一个按钮的颜色。
在下一部分,我们将尝试连接数据库并显示一些数据。
第二部分 -> 连接数据库