构建一个会议室预约系统

在完成学业或正在学习的过程中,可能会发现,当尝试构建某些东西并通过网络搜索时,大多数教程和书籍使用的是尚未完全掌握的新技术。这可能会导致更多的困惑和挫败感。一种方法是清空大脑(忘记已经知道的),然后重新开始学习这些新概念,之后再将它们与之前学到的知识联系起来(这就是做法)。但还有另一种方法,那就是从已经知道的东西开始,并在此基础上进一步发展,理解为什么需要新的方法,并开始在新项目中使用它们。本教程就是为此而制作的。将从基本的SQL连接和HTML界面开始,逐步探索MVC、ORM和面向对象编程的概念,并通过构建一个会议室预约系统来实践这些概念。将为每个部分提供源代码。

教程适合谁

如果已经完成了学业,或者正在学习,但当开始尝试构建一些东西并通过网络搜索时,会发现大多数教程和书籍使用的是还没有完全掌握的新技术。这可能会导致更多的困惑和挫败感。一种方法是清空大脑(忘记已经知道的),然后重新开始学习这些新概念,之后再将它们与之前学到的知识联系起来(这就是做法)。但还有另一种方法,那就是从已经知道的东西开始,并在此基础上进一步发展,理解为什么需要新的方法,并开始在新项目中使用它们。本教程就是为此而制作的。将从基本的SQL连接和HTML界面开始,逐步探索MVC、ORM和面向对象编程的概念,并通过构建一个会议室预约系统来实践这些概念。

如果习惯于构建网站,阅读这篇文章来理解网站和Web应用程序之间的区别。

1) 设置环境

1.1 安装Visual Studio

首先,确保有正确的环境。有Visual Studio吗?(如果有,可以跳过这一步。)

前往 https://visualstudio.microsoft.com/downloads/ 下载最新的社区版。(截至撰写本文时为2019年。)所以它将下载一个不到2MB的在线安装程序,然后可以选择需要的功能,它将自动下载并安装。微软现在推荐这种方式,并在2017年停止提供完整的下载包(ISO文件)。但知道,如果电脑上没有快速的互联网连接,这会很困难(必须下载5-40GB,具体取决于在安装程序中选择的功能),如果对此感到不舒服,可以按照这个链接创建一个离线缓存,然后在其他有良好互联网连接的电脑上下载文件,并将文件传输到电脑上进行安装。

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(大约48GB)。不确定是否可以合法地提供链接。

安装SQL Server和Management Studio(如果已经安装了这些,可以跳过这一步)。

由于将使用SQLServer作为数据库,应该也有SQL Server Express和用于手动创建和修改数据库的SQL Server Management Studio。

这里是最新的链接:

SQL Server Management Studio 18.0

SQLServer Express Edition 2017

……这是一个5MB的在线安装程序,但可以按下载媒体按钮并复制该文件到另一台电脑上。

1.2 创建项目并开始使用WebForms

但是为什么在2019年使用WebForms。

是的,WebForms和aspx页面现在越来越老了。

但是,如果来自Visual Basic和C# Windows Forms背景(很可能在学校学的就是这个),会发现WebForms非常熟悉。像代码后置、设计器视图、拖放和事件驱动模型这样的概念非常相似。在本系列的后面,将以MVC的方式重做应用程序,这样就可以真正地联系起来,理解发生了什么变化,以及关于MVC的所有炒作。

打开Visual Studio,新建项目,选择Web类别中的ASP.NETWeb应用程序。

所以,运行应用程序,看看微软希望看到的默认模板。

注意元素首页(default.aspx)、标题(顶部菜单)代码在(site.master),稍后会讨论主布局。玩转这些文件,将看到变化而不需要重新运行应用程序。(只需在浏览器上点击刷新。)

如果正在运行,请停止应用程序,让显示动态内容。

打开default.aspx,确保在源视图中(在底部检查):

更改:

<h1> ASP.NET </h1>

为:

<h1> Hello <%=Name%> </h1> <%是ASP.NET转义到服务器代码操作符,如果知道PHP语言,它是<? ?>。它基本上执行块中的任何内容,并将结果(如果有的话)与HTML一起渲染。 Name是一个变量,将不得不在代码后置中创建,=键在这里很重要,它的意思是返回Name变量以显示。所以,让创建变量。 按F7或在解决方案资源管理器中找到default.aspx文件,点击展开图标并打开文件default.aspx.cs。

添加一个变量Name并分配它,如下所示:

C# public partial class _Default : Page { public string Name { get; set; } = "Abebe"; protected void Page_Load(object sender, EventArgs e) { } }

现在如果运行,将看到Hello Abebe文本。

好的,让动态地改变文本。

切换到设计器视图,左侧面板上,将看到工具,展开并选择按钮。将按钮拖放到页面上。双击它,将被重定向到代码后置文件,并注意到新的函数(事件处理程序)被创建。在函数内部,让将Name文本分配给另一个。

C# protected void Button1_Click(object sender, EventArgs e) { Name = "Kebede"; }

现在运行应用程序并点击按钮,文本Abebe将更改为Kebede。明白了吗?

这应该让了解如何用代码后置控制UI元素。会注意到WebForms几乎和WindowsForms一样。

切换回设计视图,让从工具箱中拖放标签元素。点击刚刚拖放的新标签项,在属性窗口(右侧面板)(按F4如果看不到它),将找到像Text和ID这样的属性,将Text更改为“幸运数字”。

拖放另一个按钮,双击它,在处理函数上:

C# protected void Button2_Click(object sender, EventArgs e) { Label1.Text = new Random().Next().ToString(); }

如果运行应用程序并按下第二个按钮,将看到标签元素上显示了一个随机数字。

基本上,当将元素拖放到页面上时,可以通过元素的ID访问的字段将自动创建,可以在代码后置文件中访问并设置元素的任何属性。很酷,它和WindowsForms一样。

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485