ASP.NET错误:输入数组长度大于此表中的列数。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.ArgumentException: 输入数组长度大于此表中的列数。
错误代码如下:
DataTable sourceTable = null;
sourceTable = GetTest(tableName);
if (sourceTable == null)
{
return;
}
DataRow[] rows = sourceTable.Select("主键<>''");
DataTable retTable = new DataTable();
retTable.Rows.Add(rows);
,原因在于DataTable retTable = new DataTable();此时retTable已经生成,但是,此时并未给此表添加列,因此retTable表里的列数为0,在你dt.Rows.Add(rows);时就会异常。
解决的方法是:在DataTable retTable = new DataTable();之后使用retTable.Columns.add("列名");给retTable表对象加上列.然后再添加行。
相关文档:
1.设置web.config文件.
<system.web>
......
<globalization requestEncoding="gb2312" responseEncoding="gb2312" culture="zh-CN" fileEncoding="gb2312" />
......
</system.web>
或者:
aspx文件中:
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"&g ......
自从用了 ASP.Net MVC后就喜欢上了它 ,因为MVC对服务器控件的依赖大大减少,它生成的HTML页面就比WebForm清爽多了,加载速度有了明显的改善。
但对于页面中内嵌script,还是不能彻底的避免,如:
<script type="text/javascript" language="javascript">
//<!--
function DepositPa ......
要实现a控件控件触发b控件服务器端事件,需给a控件添加js脚本,以b控件名义提交页面,具体代码:
var theForm = document.forms['form1'];
theForm.__EVENTTARGET.value = "b"; //触发b控件服务器端方法
theForm.__EVENTARGUMENT.value = "a trigger";//传递的参数
theForm.submit();
注意:需要设置页面属性中的 enab ......
using System;
using System.Collections.Generic;
using System.Text;
using System.Security.Cryptography;namespace md5
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine(UserMd5("8"));
Console.WriteLine(GetMd5Str("8"));
}
/**//// <summary>
/// MD5 16位加密
......
与ASP相比,ASP.NET在很多方面有了显著的改进,这些方面包括:性能、状态管理、可缩放性、配置、部署、安全性、输出缓存控制、网络场支持和XML Web services结构等。
如果您具有ASP 开发技能,则新的 ASP.NET 编程 ......