制作了初中学测报名系统


阅读全文 »

浏览[155]  评论[0]

错误提示:已有打开的与此命令相关联的 DataReader,必须首先将它关闭。

经网络查阅知道,一个connection只能打开一个datareader,程序中定义了一个,而excutenonquery隐式打开一个,所以是两个,并且当前的数据库连接关闭掉后,该 DataReader 才会释放。

会考导入EXCEL时要逐条检查数据有效性,一直到64条记录错误

后来手动将DR关闭就可以了

使用ACCESS数据库一直是到conn.open()这句出错,提示异常信息,后来还是改SQL才会有详细错误提示。


阅读全文 »

浏览[48]  评论[0]

64 位系统遇到未在本地计算机上注册 Microsoft.Jet.OLEDB.4.0

引用:http://www.cftea.com/c/2011/11/ELYL7R3D9K1UB2JD.asp

     今天测试别人给的一个工具,用 .Net 写的程序,抛出异常:未在本地计算机上注册 Microsoft.Jet.OLEDB.4.0 提供程序,搞了老半天,不知道什么原因,后来搜过了一下,才发现解决问题的办法是如此简单:

     问题主要是由于代码是在32位机器上编译的,而要在我的64位机器上使用。

解决方法:

方法1:编译项目指定目标平台为 x86 就完了,不能用 Any CPU

工程属性 -> 生成 -> 配置管理器 -> 平台 -> 点击 Any Cpu 选项卡 -> 新建 -> 新建平台 ->X86

(Visual Studio 2010 为:工程属性 -> 生成 -> 常规 -> 目标平台 -> x86。Express 版本不具有目标平台选择功能。千一网络编辑注)

方法2:Web 应用程序的话,还可以这样解决:

在对应的 IIS 应用程序池中,“设置应用程序池默认属性”->“常规”->”启用 32 位应用程序”,设置为 True。


浏览[71]  评论[0]

RDLC报表常见错误及处理(都被我遇到了,晕)

1.tablix“Tablix3"引用了无效的 DataSetName "DataSet1"。

设计时要绑定数据源,也就是xsd,那个只是数据结构,没有真实的数据,xsd只是设计时使用,运行时用sqlconnection填dataset传给report

2.在 Web 窗体上报表查看器 Web 控件需要 System.Web.UI.ScriptManager。

解决办法:从工具箱 AJAX Extensions 选项卡中拖一个ScriptManager控件到窗体。


3.调用rdlc好后提示:尚未指定报表定义的来源

增加一句report.ProcessingMode = ProcessingMode.Local;

4.尚未指定报表“report1.rdlc”的报表定义

reportViewer->LocalReport->ReportPath="报表名.rdlc"


阅读全文 »

浏览[192]  评论[0]

C# URL参数传递,判断是否为数字或字符

1.id是数字的判断代码。

int id;
if( int.TryParse( Request.QueryString[ "id" ], out id ) )
{
//已传入合法的数字型id,参数值已保存在id变量中。
//查询数据库,判断代码……
}
else
{
//未传入id参数,或者为无效数字。
}


阅读全文 »

浏览[157]  评论[0]

生成中考体育考试号,要求是相同项目的在一起,便于组织,并且号要随机

USE tyxm
INDEX on bmd+xb+bkxm+cdxm+zxxm+bxxm+STR(RAND()) TAG rand
  ***建立索引
SET ORDER TO rand
  ***按索引排序
GO top
yxb=ALLTRIM(xb)
***排序后第一个性别
i=1
SCAN
   IF ALLTRIM(xb)<>yxb then
   ***性别和上一条记录不同后重置i  
    i=1
    yxb=ALLTRIM(xb)
   ENDIF
   IF ALLTRIM(xb)=='男' then
    a='1'
    ***男生用1开头
   ELSE
    a='2'
   ENDIF
  
   REPLACE tyksh WITH a+SUBSTR(ksh,8,2)+PADL(ALLTRIM(STR(i)),3,'0')
   i=i+1
ENDSCAN
SET ORDER TO
***关闭索引


浏览[167]  评论[0]

JQ动态生成的元素绑定事件最好使用.live()方法。

JS动态生成一个按钮:

var tablesubmit = "";
            tablesubmit += "<div class='clear'></div><div class='submit topbar'>"
            tablesubmit += "<input id='btn_Submit' type='button' value='交 卷' /></div>";
            $("#submit").html(tablesubmit);

使用$('#btn_Submit').click(function () {alert('哈哈');}

可是一直弹不出对话框,上网求助,终于高手提供了解决办法

$('#btn_Submit').live('click', function () {alert('哈哈');}

搞定!


浏览[211]  评论[0]

.net2.0中的Json序列化数据

在.net3.0中序列化数据只需引用System.Web.Extensions.dll, 命名空间里引用了System.Web.Script.Serialization

JavaScriptSerializer jss = new JavaScriptSerializer();

jss.Serialize(list);即可!!

但在2.0中没有System.Web.Extensions.dll,所以不能像在3.0里那样用了,我的方法是换一个序列化类,Json.Net支持.net 2.0,进入点击打开链接下载最新的Json.Net解压,然后bin文件夹里会有一个DotNet20文件夹,这就是支持2.0的Json.Net,然后再项目里引用Newtonsoft.Json.dll

再在命名空间里引用Newtonsoft.Json;

然后一句话就可序列化数据了

JsonConvert.SerializeObject(list);


浏览[215]  评论[0]

1501/15