Elvin's blog

陈文强的博客


  • 首页

  • 分类

  • 归档

  • 搜索

JQuery的Autocomplete的选项组合用法

发表于 2015-04-21 | 分类于 tech

网页下拉框往往需要一些个性化的定制,这个时候用JQuery中的Autocomplete就会出现许多比较复杂的情况,今天这个案例可以说是比较全面地应用到了Autocomplete中的各种参数和选项,值得记录一下。

需求

①页面中有多个并列的input (type=”text”) 控件,控件动态生成,只有类名标识(.txtName)

②这些控件的数据源相同,当其中一个控件选择一项后,其他控件就不能选择相同项

③出现下拉列表后,可以使用鼠标点击、方向键加Enter或Tab键,这3种方式选择,并且选择后,光标移动到文本最左侧

④页面初始化后,可能在一部分文本框有默认值,这取决于数据源

⑤用户输入错误数据时能提示并强制定位到该数据上

阅读全文 »

Windows服务的C#实现

发表于 2015-03-13 | 分类于 tech

WindowsService(简称服务,下同)是目前做客户端软件后台运行功能的非常好的选择,本文基本解决了服务的创建和编写,代码控制服务的安装、卸载、启动、停止等,为服务传递参数,其他注意事项等。

1 服务的创建和编写

①在Add Project选择Windows Service创建项目,同时添加一个Windows Service类,在这里以IFUploaderService.cs为例

②在设计器中右键选择Add Installer,如图

图1

阅读全文 »

8种排序算法的C#实现

发表于 2015-02-25 | 分类于 tech

排序是将一个数据元素(或记录)的任意序列,重新排列成一个按关键字有序的序列。排序根据涉及的存储器的不同分为内部排序和外部排序。

内部排序是指待排序记录存放在内存进行的排序过程;外部排序是指待排序记录的数量很大,以致内存一次不能容纳全部记录,在排序过程中尚需对外存进行访问的排序过程。本文仅讨论内部排序。

1 直接插入排序

最简单的排序方法,基本操作是将一个记录插入到已排好序的有序表中,从而得到一个新的、记录数增1的有序表。

此处为了程序的通用,没有采取数组0位作为哨兵位的做法。

阅读全文 »

【整理】SQLServer查询各种数据库对象(表,索引,视图,图表,存储过程等)

发表于 2015-02-08 | 分类于 tech

数据库对象定义数据库内容的结构。它们包含在数据库项目中,数据库项目还可以包含数据生成计划和脚本。

常见的数据库对象包括:表,索引,视图,图表,缺省值,规则,触发器,存储过程,函数等。

1 sys.objects视图

数据库中创建的每一个对象都对应表中的一行,但不包括DDL触发器,查询触发器应该使用sys.triggers

常见的不同类型对象在sys.objects中的区分:

类型 type列 type_desc列
foreign key 约束 f foreign_key_constraint
sql 标量函数 fn sql_scalar_function
sql 内联表值函数 if sql_inline_table_valued_function
内部表 it internal_table
sql 存储过程 p sql_stored_procedure
primary key 约束 pk primary_key_constraint
系统基表 s system_table
sql 表值函数 tf sql_table_valued_function
表(用户定义类型) u user_table
unique 约束 uq unique_constraint
视图 v view
阅读全文 »

【整理】Ajax异步实现的几种方式总结

发表于 2014-12-08 | 分类于 tech

Ajax = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)

Ajax 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。

GET 还是 POST?

与 POST 相比,GET 更简单也更快,并且在大部分情况下都能用。
然而,在以下情况中,请使用 POST 请求:

  • 无法使用缓存文件(更新服务器上的文件或数据库)
  • 向服务器发送大量数据(POST 没有数据量限制)
  • 发送包含未知字符的用户输入时,POST 比 GET 更稳定也更可靠

异步 - true 或 false?

  • XMLHttpRequest 对象如果要用于 Ajax 的话,其 open() 方法的 async 参数必须设置为 true
  • 不推荐使用 async=false,但是对于一些小型的请求,也是可以的。
  • 请记住,JavaScript 会等到服务器响应就绪才继续执行。如果服务器繁忙或缓慢,应用程序会挂起或停止。
  • 注意:当您使用 async=false 时,请不要编写 onreadystatechange 函数 —— 把代码放到 send() 语句后面即可

每当 readyState 改变时,就会触发 onreadystatechange 事件。
readyState 属性存有 XMLHttpRequest 的状态信息。

阅读全文 »

从一个小例子认识SQL游标

发表于 2014-11-08 | 分类于 tech

1 什么是游标

关系数据库中的操作会对整个行集起作用。 例如,由 SELECT 语句返回的行集包括满足该语句的 WHERE 子句中条件的所有行。 这种由语句返回的完整行集称为结果集。 应用程序,特别是交互式联机应用程序,并不总能将整个结果集作为一个单元来有效地处理。 这些应用程序需要一种机制以便每次处理一行或一部分行。 游标就是提供这种机制的对结果集的一种扩展。

游标通过以下方式来扩展结果处理:

  • 允许定位在结果集的特定行。
  • 从结果集的当前位置检索一行或一部分行。
  • 支持对结果集中当前位置的行进行数据修改。
  • 为由其他用户对显示在结果集中的数据库数据所做的更改提供不同级别的可见性支持。
  • 提供脚本、存储过程和触发器中用于访问结果集中的数据的 Transact-SQL 语句。

——MSDN

不难理解,游标与其他数据库操作的最大不同就是对象是单条记录而不是结果集,一般用于过程化程序里嵌入的SQL语句。在数据库服务程序里用到了自动隐含创建的游标。

阅读全文 »
123
Elvin Chan

Elvin Chan

If you rest, you rust

26 日志
1 分类
32 标签
RSS
GitHub 微博
Links
  • BestUCloud
© 2014 — 2021 Elvin Chan
由 Hexo 强力驱动
|
主题 — NexT.Pisces v5.1.4
Hosted by Coding Pages