Visual Studio 2017中DataRow.Field方法报错问题求助
解决DataRow不包含Field定义的问题
嘿,我之前也碰到过一模一样的问题!别着急,咱们一步步来排查解决:
问题根源
Field<T>()是扩展方法,它并不直接定义在DataRow类里,而是来自System.Data.DataSetExtensions这个独立程序集的System.Data命名空间下。你虽然添加了System.Data引用,但这个扩展方法所在的程序集默认可能没被项目引用,这才导致了错误。
具体解决步骤
添加System.Data.DataSetExtensions程序集引用
在Visual Studio 2017里,右键你的项目 → 选择「添加」→「引用」;在弹出的引用管理器里,切换到「程序集」→「框架」标签;找到System.Data.DataSetExtensions并勾选它,然后点击「确定」。确保代码文件顶部有正确的using指令
确认代码文件开头包含这行命名空间引用:using System.Data;
修正后的示例代码
using System.Data; int userid = 1000; DataTable dt = GetuserDetails(userid); string userName= dt.Rows[0].Field<string>("USERNAME");
额外说明
你的.NET Framework 4.6.1版本完全支持这个扩展方法,所以版本方面没有问题,核心问题就是漏了扩展方法所在的程序集引用~
内容的提问来源于stack exchange,提问作者PavanKumar GVVS
相关产品推荐
相关产品推荐

