IT知识库 购物 网址 游戏 小说 歌词 快照 开发 股票 美女 新闻 笑话 | 汉字 软件 日历 阅读 下载 图书馆 编程 China
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
vbs/VBScript DOS/BAT hta htc python perl 游戏相关 VBA 远程脚本 ColdFusion ruby专题 autoit seraphzone PowerShell linux shell Lua Golang Erlang 其它教程 CSS/HTML/Xhtml html5 CSS XML/XSLT Dreamweaver教程 经验交流 开发者乐园 Android开发资料
站长资讯 .NET新手 ASP.NET C# WinForm Silverlight WCF CLR WPF XNA VisualStudio ASP.NET-MVC .NET控件开发 EntityFramework WinRT-Metro Java C++ PHP Delphi Python Ruby C语言 Erlang Go Swift Scala R语言 Verilog 其它语言 架构设计 面向对象 设计模式 领域驱动 Html-Css JavaScript jQuery HTML5 SharePoint GIS技术 SAP OracleERP DynamicsCRM K2 BPM 信息安全 企业信息 Android开发 iOS开发 WindowsPhone WindowsMobile 其他手机 敏捷开发 项目管理 软件工程 SQLServer Oracle MySQL NoSQL 其它数据库 Windows7 WindowsServer Linux
  IT知识库 -> .NET新手区 -> 先记下这些小毛病,后面在慢慢回味 -> 正文阅读

[.NET新手区]先记下这些小毛病,后面在慢慢回味

先记下这些小毛病,后面在慢慢回味 理解需求:理清业务逻辑,根据业务场景,选择合适的解决方案 按照开发语言的编程规范开发 对象的序列化:处理ajax请求时,一般都是将后台要返回的数据序列化成json对象,这样便于页面获取json数据 如果后台返回给页面的数据已经是json对象了,但是前台仍然获取不到,可以用 $.parseJSON(data); 在 jquery3.0以后,请用$.parseJSON已经过时,不建议使用,将字符串解析成JSON对象,请使用原生的JSON.parse方法来代替。 在三层架构中,DAL和BLL的创建,都要以数据来源为依据,不能根据UI的要求去创建对应的BLL文件;数据库的每一张表,对应一个实体类,对应一个DAL,对应一个BLL,这样可以保持整个项目结构比较简洁,便于后期维护,不要到处创建BLL。对于通用的操作,可以写在BaseDAL(或者BaseBLL)中。asp.net MVC亦是如此。 数据模型(实体类)以业务为主,既有通用性,又具有独特性。如果数据模型(实体类)不满足当前业务,可以写一个扩展类,继承于当前的数据模型(实体类) 在三层架构(或ASP.NET MVC中),尽量做到各层各司其职。 数据库只用来存储据(少写存储过程,少写SQL) model层的实体类,只用来存与数据库每张表对应的实体,以便各层用model传递数据 DAL层操作数据库,如果用ado.net操作数据库,尽可能的少用DataTable;推荐使用EF框架,尽量减少与数据库的交互,合理使用缓存 BLL层,用来处理从DAL层拿到的数据,主要是从业务的角度去处理 UI层,用来做展现,在将数据展现给UI层之前,最好是将数据序列化为json对象,便于前台处理 对于数据的增删改,不要从页面上取数据,所有的数据都从数据库来。例如要修改某个用户的信息,这个时候后台一般有两个editUser的方法,示例如下: 
  [get]
    public User EditUser(string UserID)
    {
    //这个方法的作用是:1.从数据库获取用户信息
                        2.当数据获取到之后,进行下一步操作(跳转到修改页面,或者是弹出一个框)
                        3.将获取到的数据,传递给真正用来提交数据的那个方法
    }
    
    [post]
    public bool EditUser(User user)
    {
        //这个方法,才是真正将修改后的User信息,提交给服务器
    } web端需要提交的数据,尽量放在form里,然后用$("#formid").serialize()方法,将表单数据封装成json 所有的增删改操作,都最好有日志记录,对数据的删,一般都会保留原有的数据,新增一条新纪录,做软删除。 ambda表达式其实是对当前对象的迭代,使用时,要明白每一个操作之后返回的对象是什么。 EF框架中的lambda表达式,select和where的顺序在写法上不分先后,因为是懒加载,用的时候(比如调用ToList()方法)才会生成一条完整的sql。select是必须的,否则会出异常。 普通的lambda表达式,不操作数据库的时候,只是对当前数据的筛选和计算。要注意select和where之间的顺序,select和where 都不是必须的 JS比较大小,要用parseint()和parsefloat() 将字符串转换为对应的int或float类型之后,才能做比较 sqlserver的递归和游标,使用时注意全局游标与本地游标的区别 浏览器调试,注意打断点的位置 理解ajax的异步原理和执行过程 数据库建表,要避免表的冗余,相同结构的数据,可以放在同一张表中做好标识 配置表要具有通用性 学习项目结构(架构)设计,提升项目的性能。项目结构要具有可扩展(接口式编程),易卸载的特点 系统的通用部分:全局异常处理(可提高系统的稳定性)、日志监控(便于快速定位问题)、用户权限配置、数据导入导出、邮件服务 代码中尽量不要写绝对路径 如果程序本机正常,在服务器上运行异常,解决办法:1.查看服务器系统日志 和IIS日志 2.用VS进行远程调试
上一篇文章           查看所有文章
加:2017-10-26 23:24:55  更:2017-10-26 23:24:59 
 
  .NET新手区 最新文章
将ZIP文件添加到程序集资源文件然后在运行时
Web服务的调用
.NET创建WebService服务简单的例子
多线程编程学习笔记——任务并行库(三)
序列化和反序列化
Spring学习之路
cs代码实现控件移动TranslateTransform
Asp.net基础知识
ACdream原创群赛(11)の风神日华神专场C.神奇
SQL 存储和触发器
技术频道: 站长资讯 .NET新手区 ASP.NET C# WinForm Silverlight WCF CLR WPF XNA Visual Studio ASP.NET MVC .NET控件开发 Entity Framework WinRT/Metro Java C++ PHP Delphi Python Ruby C语言 Erlang Go Swift Scala R语言 Verilog 其它语言 架构设计 面向对象 设计模式 领域驱动设计 Html/Css JavaScript jQuery HTML5 SharePoint GIS技术 SAP Oracle ERP Dynamics CRM K2 BPM 信息安全 企业信息化其他 Android开发 iOS开发 Windows Phone Windows Mobile 其他手机开发 敏捷开发 项目与团队管理 软件工程其他 SQL Server Oracle MySQL NoSQL 其它数据库 Windows 7 Windows Server Linux
脚本语言: vbs/VBScript DOS/BAT hta htc python perl 游戏相关 VBA 远程脚本 ColdFusion ruby专题 autoit seraphzone PowerShell linux shell Lua Golang Erlang 其它教程
网站开发: CSS/HTML/Xhtml html5 CSS XML/XSLT Dreamweaver教程 经验交流 开发者乐园 Android开发资料
360图书馆 软件开发资料 文字转语音 购物精选 软件下载 新闻资讯 小游戏 Chinese Culture 股票 三丰软件 开发 中国文化 网文精选 阅读网 看图 日历 万年历 2018年10日历
2018-10-24 3:18:10
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT知识库