文章目录
# ASP.NET
ASP.NET与JSP、PHP明显的区别是ASP.NET自带一个.NET框架这使得ASP.NET变得很方便,学了ASP.NET后就不要学ASP了,没学的直接学ASP.NET就行了。其实如果学过ASP.NET后再学PHP、JSP的框架会有恍然大悟的感觉。
#架构
##Web Forms
这是最简单的一种架构,由两部分组成.aspx文件与.cs文件.aspx文件就相当于可以插入C#代码的HTML文件,cs文件是c#语言写的后台。
Web Forms方便的地方就是,控件添加一个属性runat= server
后,就可以在后台直接用控件id直接操作控件,比如直接写TextBox1.Text = "Hellow,World";
就可以直接设置ID为TextBox1
控件值显示为Hello,World
。还有因为ASP.NET是用VisualStudio开发的,你可以直接点击设计,拖控件就可以拖出个界面。
所以ASP.NET网站流程就是
- 新建->网站->ASP.NET空网站
- 右击解决方案->添加新项->WEB窗体
- 确定后会出现两个文件.aspx与.cs
- 在.aspx文件->点击左下角设计拖控件或左下角源程序设计HTML代码同时写c#后台逻辑和数据库之类的->然后右击文件在浏览器中查看。
下面说下.cs文件
public partial class className : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack){}//只在第一次打开该页面时执行
}
}
下面的Page_Load是页面打开后执行的方法,里面你可以调用其他方法。
Web Forms是事件驱动的,.aspx文件拖button后双击,然后.cs文件写处理代码就实现了按钮事件
就这样两个文件组成一个界面,很多个界面就组成一个网站了
如果你想把重复的代码放到一起,可以在建立WEB项目的同时建立一个DLL类库项目,他们放到同一个解决方案里,这样再编辑完DLL后
就可以直接用WEB项目引用并测试了
##HTML+AJAX+ashx
如果你的HTML页面都是现成的模板,不想对文件做太多更改可以采用这种架构,只需要在每个需要交互的HTML页面下面写上AJAX代码提交到ashx文件就行,ashx文件可以很多个也可以一个文件通过switch处理不同HTML页面的请求。
- 网上随便下载网站模板,整个复制到项目中
- 在任意html文件中写由按钮触发的ajax代码,url填写ashx文件路径
- 在ashx文件中写操作数据库返回数据等处理
##MVC
这种选择添加项目->ASP.NET WEB应用程序然后选中MVC就行了,MVC介绍可以自行查找资料。至于cshtml文件介绍一下是类似于ASP页面的HTML+C#代码动态视图文件,比较新且更简单一些。