weixin_39391823
UKnowImJin
采纳率52.6%
2017-07-05 02:55 阅读 1.0k
已采纳

大佬们好,新人有个大问题求各位大佬指点下!

10

我是一个应届毕业生,学的基本是.NET方向的东西,现在在一家公司上班,公司给我的考核
项目是一个网站,但是他们公司开发的思路跟我的不太一样,给我的源代码也只是懂一部分,很多代码都没见过,有大佬们能帮我讲讲吗
图片说明
图片说明
图片说明大概就是这样,然后下面是我以前做的一个web小项目,在学校学的,感觉很多方式都不同,包括三层的写法,求解!!!图片说明

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

4条回答 默认 最新

  • 已采纳
    lrprocedure bakalr 2017-07-05 04:48

    因为看不到调用的层级方法,所以具体是怎么方法是怎么调实现的看不到,不过也是很基本的三层框架
    第一张图打开的是UI层的一个页面

    首先PageLoad是一个初始页方法,用于在打开页面时实现一些里面的代码功能
    ispostback用于判断用户是第一次打开还是点击了提交按钮,这2种操作都会进行post提交,所以这里用
    this.ispostback==false
    来确保{}里的代码是第一次打开页面需要执行的代码,关于ispostback的说明网上非常详尽
    其实可以写成if(!ispostback){}简略些
    {}里面的viewstate相当于在本页面存储一个变量,viewstate是ASP.NET服务器控件的一个隐藏属性,可以保存
    指定id的变量值,作用范围在当前页面,viewstate本身没有类型,他可以保存string,int,bool,array和一些其他类
    型的值,有点类似于form程序的全局变量(但并不是,可以这么理解)
    题外话:ASP.NET里面用的比较多的状态记录一个是session一个是viewstate,其他的还有cookie等,session工作在服务器端,所以大量
    的session会耗用服务器资源,viewstate是存入页面控件不挤占服务器资源,但是会挤占带宽,另外,session生命周期
    可以扩大至整个会话,而viewstate
    注意,viewstate使用要谨慎,他的值会以base64编码的形式出现在前端源码中,并不是很安全,所以在使用时要
    小心一点
    另外,MVC架构下是没有viewstate的,这点请注意,MVC有其他解决办法,例如js。
    gv.attributes.add以及gvdatabind很简单了,一个是后台增加控件属性和值,一个是调用方法绑定数据。
    requset是一个httprequset类的实例。用于读取web请求旗舰的http值,querystring是用的最多的属性,用于获取id值

    gvdatebind(){}
    这里面基本都是实现数据绑定和分页的一些内容,比较简单,
    大致上就是调用业务逻辑层获取数据库的指定数据结果集,转为dataset(datatable)
    然后使用DataSource=dt.defaultview;Databind();绑定到GridView上去
    一步一步跟踪看看就明白了
    注意分页也是依赖于viewstate实现的,viewstate可以实现值的更新
    dataset是一个表集合,它可以包含多个datatable,通过例如ds.tables[索引/"datatable名"]的方式访问。

    第二张图
    清空表单那个就不说了,很简单
    page.registerstartupscript用于向page发送客户端脚本块,它有两个参数,一个string key和一个string script,前者
    用于标示脚本唯一键,后者为内容,具体的内容自行百度即可,也很简单
    rowdeleting事件是GridView控件中的时间,在准备删除时会判断是否获取了datakeys,datakeys是你设置的这个
    gridview的主键,也是用于操作的唯一键值,接下来就是根据这个键值来进行相应的操作了
    比如更新删除等(业务逻辑层的事,ui层只是调用了方法)

    rowdatabound事件中可以指定对GridView的某种类型的数据行进行操作,这里看不到代码

    涉及的基本思想基本就是这些,其实只是一个有比较实际作用的三层架构的使用,还是比较简单的,分页的功能可以多看看理解下
    分页有很多种实现思路,也是一个比较重要的痛点。

    点赞 3 评论 复制链接分享
  • lilongsy 小龙在山东 2017-07-05 02:58

    直接实现公司给的需求即可,没必要弄懂他们写的代码,因为时间比较着急;如果不着急可以慢慢看,总有明白的时候。看着像是一个商城网站。

    主要看和使用他们的基础库Moudle。

    点赞 2 评论 复制链接分享
  • abcfgh abcfgh 2017-07-05 03:06

    我已经看过,没有发现什么特别的地方,都是些基础的东西。你可以再学习学习。

    点赞 1 评论 复制链接分享
  • m0_45441029 冬寻 2021-04-21 18:37

    比较旧的技术了 代码也很基础 多看看百度百度就明白了 现在主流基本都是微服务架构和ddd

     

    点赞 评论 复制链接分享

相关推荐