现在的位置: 首页 > 编程语言 > 正文

.NET有哪些架构

2020年06月01日 编程语言 ⁄ 共 2860字 ⁄ 字号 评论关闭

  对于三层架构来说,就是使用类,把我们在做项目的过程中,具有共同性质的一些对象抽象出来。当然了,这也是面向对象的一部分。其中的三层所指的就是:①实体层②数据库访问层③业务逻辑层。下面学步园小编来讲解下.NET有哪些架构?

  .NET有哪些架构

  1)首先还是先来介绍一下实体层吧,就是我们通常所说的Entity

  实体就是我们在开发项目过程中所要涉及的一些对象。把这些所要涉及的对象(如:新闻名称,新闻上传时间,供稿人,上传文件的名称等),都抽象成一个类。使用封装字段方法,我们可以在视图层通(主要是视图层)过实例化对象的方法,来给我们的对象的属性赋值。

  简单的看一段代码吧,可能会能够更加的清楚,明白

  publicclassNewsModel

  {

  //新闻编号

  privateintnNewsId;

  publicintNNewsId

  {

  get{returnnNewsId;}

  set{nNewsId=value;}

  }

  //新闻名称

  privatestringstrNewsName;

  publicstringStrNewsName

  {

  get{returnstrNewsName;}

  set{strNewsName=value;}

  }

  }

  这里的NewsModel就是一个关于新闻的实体类,其中声明了两个private的属性字段(一定要是private,防止非法赋值),使用public的构造函数,可以在外部给字段赋值。

  下面的就是在视图层来实例化对象,根据需要来给字段赋值,看下面的一段代码:

  NewsModelnewModel=newNewsModel();

  newModel.StrNewsName=this.TextBox1.Text;

  当然了,这仅仅是一段代码,其中并没有给字段nNewsId赋值,因为我把它作为数据库的id地段,已经设置成自动增长。这样,就完成了视图层对实体层的调用。

  .NET有哪些架构

  2)数据库访问层

  数据库库访问层,顾名思义,就是主要来完成对数据库的访问,等一系类的对数据库操作的类。为什么要单独的把对数据库的操作抽象成一个单独的类,我个人理解是因为在整个项目的开发过程中,不仅仅需要一次访问数据库,而是需要多次,如果每次都编写数据库访问代码的话,会增加程序员的个人工作量,而且对于代码的易用性和简洁性来说肯定是非常糟糕的。当然来可能还有其它的一些优点,我暂时还没有发现。

  既然是对数据库的操作类,而且对数据库的操作,无非就是四种:增删改查。所以一个能提供增删改查的通用类是必不可少的。这就是我们经常所说的,通用数据库访问类(很多的程序员都喜欢把这个类命名为SqlHelper,既然是名字,都是可以随意起的,只要不违反C#语法命名规范,当然这样命名也是有好处,就是可以使其他程序员根据类的名称,大概判断出这个类是要干什么的)。

  当然了,我这次做自己项目的时候,所写的数据库访问类就没有我上次看周金桥老师的书,然后模仿写的数据库访问类那么的复杂了(《【ASP.NET开发】ASP.NET对SQLServer的通用数据库访问类》)。当然了,我这里的数据库访问类,主要还是为了简介,和易用,只要满足我自己当前项目的需要就可以了,不是每做一个项目,都要写一个功能全面的数据库访问类。

  代码如下,请大家参考,更喜欢哪个访问类,自己可以根据自己口味,或者需要,直接用也可以:

  ///

  ///创建一个SqlHelper的数据库访问通用类,完成对数据库的所有操作

  ///

  publicclassSqlHelper

  {

  //定义数据库的连接字符串

  privatestaticreadonlystringconnectionString=ConfigurationManager.ConnectionStrings["strConnectionString"].ConnectionString;

  ///

  ///创建方法,完成对数据库的非查询的操作

  ///

  /// sql语句

  /// 传入的参数

  ///

  publicstaticintExecuteNonQuery(stringsql,paramsSqlParameter[]parameters)

  {

  using(SqlConnectioncon=newSqlConnection(connectionString))

  {

  con.Open();

  using(SqlCommandcmd=con.CreateCommand())

  {

  cmd.CommandText=sql;

  cmd.Parameters.AddRange(parameters);

  stringstr=sql;

  returncmd.ExecuteNonQuery();

  }

  }

  }

  ///

  ///完成查询的结果值

  ///

  /// sql语句

  /// 传入的参数数组

  ///

  publicstaticintExecuteScalar(stringsql,paramsSqlParameter[]parameters)

  {

  using(SqlConnectioncon=newSqlConnection(connectionString))

  {

  con.Open();

  using(SqlCommandcmd=con.CreateCommand())

  {

  cmd.CommandText=sql;

  cmd.Parameters.AddRange(parameters);

  returnConvert.ToInt32(cmd.ExecuteScalar());

  }

  }

  }

  ///

  ///主要执行查询操作

  ///

  /// 执行的sql语句

  /// 参数数组

  ///

  publicstaticDataTableExecuteDataTable(stringsql,paramsSqlParameter[]parameters)

  {

  using(SqlConnectioncon=newSqlConnection(connectionString))

  {

  con.Open();

  using(SqlCommandcmd=con.CreateCommand())

  {

  cmd.CommandText=sql;

  cmd.Parameters.AddRange(parameters);

  SqlDataAdapteradapter=newSqlDataAdapter(cmd);

  DataTabledt=newDataTable();

  adapter.Fill(dt);

  returndt;

  }

  以上就是关于“.NET有哪些架构”的内容,希望对大家有用。更多资讯请关注学步园。学步园,您学习IT技术的优质平台!

抱歉!评论已关闭.