摘要: 实践五.呈现RadioButtonList 1.假如现在从数据库提取了一些数据:List<Category> cateoryList = new List<Category>(){ new Category(){ CategoryID = 1, CategoryName = "公司内造" }, new Category(){ CategoryID = 2, CategoryName = "公司外购" }}; 2.通过Linq 将数据生成 SelectListItem 类型的集合,并赋予 ViewData[... 阅读全文
posted @ 2012-02-25 22:31 罗霄(Sto) 阅读(288) 评论(0) 推荐(0) 编辑
摘要: 实践一. Html.RenderPartial 在MVC2用法如:<%Html.RenderPartial( "SomeControl.ascx", ViewData.Model ); %> 优点:使用简单,不需要任何Action 缺点: 1.需具体用户控件的文件路径 2.需要承担组织实体数据的任务 3.路过Controller层直接向DB发出操作请求 *最佳实践还是参考下面的"实践二",即采用 RenderAction(),让Action去请求对应的 PartialView。实践二. Model Binding to a List【模型绑定 阅读全文
posted @ 2012-02-23 10:13 罗霄(Sto) 阅读(433) 评论(0) 推荐(0) 编辑
摘要: Ctrl + / 一般注释【 // 】Ctrl + Shift +/ 大块注释【 /**/ 】Ctrl + Alt + J 外侧代码【相当于 Ctrl + K,Ctrl + S】Ctrl + Alt + V 变量自动完成,为表达式生成一个本地变量,比如你输入obj.GetName(); 该快捷方式会将其修正为:string name = obj.GetName();Ctrl + Alt + WhiteSpace 代码提示【相当于 Ctrl + J 】Ctrl + Alt + F7 列举指定对象(Symbol)所有被引用的项Ctrl + Q 即时浏览一下指定对象(Symbol)的定... 阅读全文
posted @ 2012-01-10 22:41 罗霄(Sto) 阅读(550) 评论(0) 推荐(1) 编辑
摘要: ReSharper是面向微软开发环境Visual Studio(2005、2008、2010)的重构工具,对包含着众多项目的一个解决方案可作完美重构,只要按照正确的方法操作,诸如命名空间、程序集名称等都可顺利替换,最重要的是这一过程不会影响到各程序集间的引用关系。 引用一段官网的说明:ReSharper is a renowned productivity tool that makes Microsoft Visual Studio a much better IDE. Thousands of .NET developers worldwide wonder how they've 阅读全文
posted @ 2012-01-01 07:17 罗霄(Sto) 阅读(2388) 评论(4) 推荐(0) 编辑
摘要: 很多网站的首页都提供信息的输入,而不论您是否有账户且已登录。比如我喜欢逛的42qu(我跟创始人无任何关系,仅是喜欢该网站且无意广告,有兴趣的可以瞧瞧去)。当我发表自己的"碎碎念"时,会被自动跳转到登录页,而问题是登录成功后能否再回到原来的页面。听起来这个问题略显乏善可陈,然而它的实现框架是MVC ... 阅读全文
posted @ 2011-12-13 19:44 罗霄(Sto) 阅读(5390) 评论(9) 推荐(2) 编辑
摘要: Razor视图模型支持 @model来初始化页面对象类型,比如: 也可以是一个支持迭代的公开枚举器: 当我们只关注对一个实体类进行呈现时,MVC 3.0的实现非常给力,Controller层只需要两行代码: ToList()方法返回的是List<T>集合,它实现(Implements)了接口IEnumerable<out T>,所以var型变量tr... 阅读全文
posted @ 2011-12-03 19:30 罗霄(Sto) 阅读(2572) 评论(15) 推荐(4) 编辑
摘要: 系统表sysobjects保存的都是数据库对象,其中type表示各种对象的类型,具体包括: U = 用户表 S = 系统表 C = CHECK 约束 D = 默认值或 DEFAULT 约束 F = FOREIGN KEY 约束 L = 日志 FN = 标量函数 IF = 内嵌表函数 P = 存储过程 PK = PRIMARY KEY 约束(类型是 K) RF = 复制筛选存储过程 TF = 表函数... 阅读全文
posted @ 2011-11-30 12:05 罗霄(Sto) 阅读(560) 评论(0) 推荐(0) 编辑
摘要: 一.对某张表内的非空字段,不列举在页面表单上将不做非空验证。 某表有10个字段,其中5个是必输项(A、B、C、D、E),另5个(a、b、c、d、e)都有默认值(如:CreateTime)。在Models层由VS自动生成的数据模型(或者由部分类中采用MetadataType扩充)得到的各属性(Property),都添加上验证属性(Attribute):对A、B、C、D、E都需要添加 [Required(ErrorMessage = “请输入值”)],而另5个有默认值的属性(Property)则不需添加。因为A、B、C、D、E在数据库是必填项,是一条记录不可或缺的组成基础,故可以认为它们在页面表单 阅读全文
posted @ 2011-11-18 11:11 罗霄(Sto) 阅读(289) 评论(0) 推荐(1) 编辑
摘要: 在SQLite中,有以下几种索引:1)单列索引2)多列索引3)唯一性索引4)对于声明为:INTEGER PRIMARY KEY的主键来说,这列会按默认方式排序,所以虽然在数据字典中没有对它生成索引,但它的功能就像个索引。所以如果在这个主键上在单独建立索引的话,这样既浪费空间也没有任何好处。运用索引的注意事项:1)对于一个很小的表来说没必要建立索引2)在一个表上如果经常做的是插入更新操作,那么就要节制使用索引3)也不要在一个表上建立太多的索引,如果建立太多的话那么在查询的时候SQLite可能不会选择最好的来执行查询,一个解决办法就是建立聚蔟索引索引的运用时机:1)操作符:=、>、<、 阅读全文
posted @ 2011-11-03 08:35 罗霄(Sto) 阅读(345) 评论(0) 推荐(0) 编辑
摘要: 代号为 X 的(C/S)应用程序是给我们内部同事使用,以配置数据库的各表值、参数。当X程序起动后,每个人都期望连接自己电脑的本地数据库(Sql 2005),而往往待我将X程序发布后,配置文件信息总是默认成我的开发机器中的配置信息,从而导致他们登录时失败,为此他们需手动修改配置文件(App.config),让人感觉其用户体验真是相当的不爽。 于是我想在启动应用程序之前,对数据库连接进行试探性检验,如果连接失败则立即返回,可不能像默认时长达15秒的等待时间,显然这种假死状态的用户体验同样是令人相当沮丧的,何况 X 程序还是给程序员用的。 先看看试探性检验数据库连接代码(代码分页在两个物理层... 阅读全文
posted @ 2011-09-05 10:24 罗霄(Sto) 阅读(281) 评论(0) 推荐(1) 编辑