【发布时间】:2021-05-05 13:01:44
【问题描述】:
在WPF C# (.NET 5.0) 中创建项目时,我想使用我数据库中的数据。我有一个 Microsoft Access 文件(2000-2003 兼容版本,*.mdb),需要用于我的项目。
添加新来源后
Add > new Item... > Data > DataSet 并正确指定数据库(测试连接成功),文件DataSetProj.xsd 已创建。
但是,当我尝试运行代码时,出现以下错误:
Error CS1069: The type name 'OleDbDataAdapter' could not be found in the namespace 'System.Data.OleDb'. This type has been forwarded to assembly 'System.Data.OleDb, Version=0.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' Consider adding a reference to that assembly.
单击CS1069 超链接时,this 站点打开(很遗憾,没有提供有关错误的详细信息)。
试图自己修复错误,我找到了System.Data.OleDb 命名空间文档。这是我有趣的观察:DataSetProj.Designer.cs 文件自动生成的代码有类(应该在命名空间中定义),如OleDbConnection 或OleDbDataAdapter。有趣的是,this 命名空间 提及 these 类,但似乎它们不是命名空间的一部分(尽管这是官方的 MS 文档)。当我输入任一类的documentation 时,它们都包含在System.Data.Ole.Db 命名空间中。这很奇怪而且非常不清楚(至少对我来说,初级开发人员)文档。
我尝试切换到.NET 4.8 Framework,通过ErikEJ 使用EF Core Power Tools(不幸的是它不适用于Access *.mdb 文件)。我在任何地方都找不到这个问题的答案,尽管似乎很多人都会遇到这样的问题。
如何让它发挥作用?
【问题讨论】: