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表对象加上列.然后再添加行。
相关文档:
HTTP Error 500.19 - Internal Server Error
一 首先解锁
配置错误: 不能在此路径中使用此配置节。如果在父级别上锁定了该节,便会出现这种情况。锁定是默认设置的(overrideModeDefault="Deny"),或者是通过包含 overrideMode="Deny" 或旧有的 allowOverride="false" 的位置标记明确设置的。
出现这个错误是因为 IIS 7.5 ......
要实现a控件控件触发b控件服务器端事件,需给a控件添加js脚本,以b控件名义提交页面,具体代码:
var theForm = document.forms['form1'];
theForm.__EVENTTARGET.value = "b"; //触发b控件服务器端方法
theForm.__EVENTARGUMENT.value = "a trigger";//传递的参数
theForm.submit();
注意:需要设置页面属性中的 enab ......
搜索引擎优化对任何面向公众的网站来说都非常重要,ASP.net 4.0 为此就做了大量改造。这些改进包括如下:
301
永久性重定向
随着时间的迁移,网站的一些页面地址会发生变化,这会导致搜索引擎收录的链接地址、用户收藏的地址失
效。Response.Redirect() 就是解决这个问题的。但是Response.Redirect 有以下问题:
Respo ......
asp.net中自带的CutString只能截取字符数量的长度,但中英文字符数有差异,一个中文字等同于二个英文字符的宽度,这样对截取后的效果不理想.使用以下的方法就能解决.
//调用方法
string title=BLL.CutStr.CutString("标题",10);using System;
using System.Collections.Generic;
using System.Text;
namespace BLL
{
&n ......
使用WebClient自动填写并提交ASP.NET页面表单
在.NET中通过程序填写和提交表单还是比较简单。比如,要提交一个如下图所示的登录表单:
填写和提交以上表单的代码如下:
&nb ......