数据集自动生成的代码中“找不到合适的方法来替代”

时间:2019-04-12 21:26:33

标签: .net visual-studio

我试图将数据集(.xsd)添加到我的Visual Studio项目中。我正在引用现有的数据库表。

我执行了以下步骤:

  1. 在“解决方案资源管理器”面板中右键单击“项目”。
  2. 点击“添加项目”。
  3. 从“数据”列表中选择“数据集”。
  4. 将表从Server Explorer拖放到空白的Dataset设计器页面。
  5. 保存文档。

保存后,我会收到几十个错误,如下所示:

  • The type name 'SqlParameter' could not be found in the namespace 'System.Data.SqlClient'
  • 'MyDataTable' does not contain a definition for 'Prefix' and no accessible extension method 'Prefix' accepting a first argument of type 'MyDataTable' could be found (are you missing a using directive or an assembly reference?)
  • 'MyDataTable.Clone()': no suitable method found to override

我尝试删除数据集并从头开始重新启动,并且发生了相同的问题,这意味着我的工作流程中的某些原因导致了这种情况。

为了进行比较,我打开了一个项目,该项目使用Dataset类和相同的数据库使用相同版本的VS构建了几个月,并且没有明显的区别。

我还从项目根目录中删除了.vs文件夹,因为这有时会导致引用异常。

没有太多代码可以显示,它们都是由VS自动生成的,但是上面的错误已从VS Error List面板中复制出来。

我需要帮助弄清楚我在Visual Studio中错误地设置了哪些设置/配置,从而导致此问题。

1 个答案:

答案 0 :(得分:0)

万一其他人遇到此问题,Visual Studio 2017并不总是包含使用向导设置数据集时所需的所有引用/库。

就我而言,我不得不从NuGet手动添加对System.Data.SqlClientSystem.Data.DatasetExtensions的引用,即使它们仅由自动生成的类使用。