我使用linq和oraclehtml" target="_blank">数据库在ASP.NET C#中制作了一个应用程序。此应用程序在Widows 7 32位本地主机上运行良好。但当我在windows server 2008 R2中部署此应用程序时,它出现以下错误。请指导我以下错误是什么。如何在部署服务器上检查此错误以及如何解决此错误
指定的强制转换无效。描述:当前web请求执行过程中发生未处理的异常。请查看堆栈跟踪,以获得有关错误及其在代码中产生的位置的详细信息。
异常详细信息:System.InvalidCastException:指定得强制转换无效.
源错误:
在执行当前web请求期间生成了未处理的异常。有关异常的起源和位置的信息可以使用下面的异常堆栈跟踪来标识。
堆栈跟踪:
[InvalidCastException:指定的强制转换无效。]
System.Data.Unboxt`1.ValueField(对象值)+54
sis.<>C__DisplayClass55.B__0(DataRow r)+38
System.Linq.WhereEnumerableIterator`1.MoveNext()+156
System.Linq.WhereSelecteNumerableIterator`2.MoveNext()+165
System.Linq.D__81`1.MoveNext()+472
System.Linq.Enumerable.Count(IEnumerable`1源)+267
sis.regreport.page_load(对象发送方,EventArgs e)+5015
System.Web.UI.Control.LoadRecursive()+71
System.web.ui.page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint,Boolean
includeStagesAfterAsyncPoint)+3178
var vcolM = dt.AsEnumerable()
.Where(r => r.Field<string>("MAJ") == (string)vprglist
&& r.Field<string>("SPEC") == (string)vspecourse
&& r.Field<string>("L_ABR_CODE") == (string)genderEng[1]
&& r.Field<string>("reg") == (string)drRegion["reg"]
&& r.Field<decimal>("year") == syrcnt)
.Sum(r => Convert.ToInt32(r["strength"]));
以上所有的linq在本地PC中都能正常工作,但在windows Server2008中出现错误,其中syrcnt为int。
InvalidCastException
最可能的原因是R.field
行。如果数据的实际类型与传递给字段
的类型不匹配,字段
扩展方法将引发InvalidCastException
。
或
位于此处的convert.toint32(R[“strength”])
,强度可能没有得到正确的类型
老实说,我认为您的问题在于行r.field
。我可能错了,因为关于变量syrcnt
的数据类型信息不多
因此给出异常System.InvalidCastException:指定的强制转换无效
问题内容: 嗨,我一直在代码中看到这个指定的转换无效,但是当我连接到备份数据库时,我没有收到指定的转换无效的错误。我不确定发生了什么。 同样,此代码可在一个数据库上完美运行,而在另一个数据库上却给我错误。 我的控制器 我的模特 堆栈跟踪 问题答案: 将备份数据库与无效数据库进行比较,尤其是将ID列进行比较。确保它们同时匹配 类型 (浮点数)和可为 空 (NULL)的能力。 引发异常表示列之一(类型
指针变量数据类型的强制转换 必须显式强制类型转换,不允许隐式类型转换 指向空间的强制类型转换,本质上就是普通变量的强制类型转换 int a = 10; float b = 3.14; int *pa = &a; float *pb = &b; *pa = (int)*pb; // 等价于 a = (int)b; 指针本身强制类型转换,改变的是对其指向空间的引用方式(空间大小和存储结构) int
假设代码是用c11编译的,并且启用了严格别名。 我不是在寻找一种不同的方法,我想专注于这个具体的问题,以及它是否可行或为什么不可行。 (如果我无意中犯了一些无关的错误,请告诉我,我会改正的) C11标准说: 6.2.5.28所有指向结构类型的指针应具有彼此相同的表示和对齐要求。 6.7.2.1.6结构是由成员序列组成的类型,其存储按有序顺序分配 这意味着结构A和B中指针的大小和对齐方式相同。 结构
我得到以上的错误,如果有人知道,然后告诉我。。。我将非常感激 Java: XML:
下面是托管活动片段: 有问题的行是代码段的最后一行。这是我的语录片段。 假设我对主机活动没有扩展support.v4的看法是正确的,那么我该怎么做呢?
我有以下结构: void*arr保存指向内存中某些单元格的指针。每个单元格都有一个指向内存中另一个单元格的空指针(作为链表)、一个char*字符串和一个具有自己大小的值。 编辑--因为它是一个指针链表,难道我不能也做一些类似于-map->arr+index*sizeof(Void*)的事情来获得给定单元格的开始吗?