C# .NET3.5 改为 到.NET2.0 时 TypedTableBase 报错解决方法

本文详细探讨了在将.NET应用从.NET3.5降版本至.NET2.0过程中遇到的问题及解决策略,包括处理编译错误如'Linq'类型不存在、'TypedTableBase'接口实现问题等。通过删除不必要的引用、修改代码以适应.NET2.0的特性,最终成功解决了这些问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

NET 3.5 降版本 到.NET 2.0。不出意外,问题必然来了。
编译错误一:
错误 1 命名空间“System”中不存在类型或命名空间名称“Linq”(是缺少程序集引用吗?)
解决:
删掉该引用--没用到情况下,呵呵
使用Linq时,引用一个LinqBridge.dll 就可以了
编译错误二:
错误 2 命名空间“System.Data”中不存在类型或命名空间名称“TypedTableBase”(是缺少程序集引用吗?)
解决:
该错误出现在代码生成工具生成Dataset的片段里面。
.NET 3.5 : public partial class SubusersDataTable : global::System.Data.TypedTableBase<SubusersRow> {
要改成
.NET 2.0: public partial class SubusersDataTable : global::System.Data.DataTable, global::System.Collections.IEnumerable {
然后编译会出现另一个错误
错误 1 “DataTable”不实现接口成员“System.Collections.IEnumerable.GetEnumerator()”
查了以下网页 有好几种解决方法。
http://www.cnblogs.com/30ErLi/archive/2010/09/14/1826101.html
http://msdn.microsoft.com/zh-cn/library/system.collections.ienumerable.getenumerator(VS.80).aspx
继承接口加上下面这段就可以了
public System.Collections.IEnumerator GetEnumerator()
{
return GetEnumerator();
}

转载于:https://www.cnblogs.com/pumax/p/3141527.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值