如何解决命名不明确的扩展方法?

发布于 2024-09-04 03:17:53 字数 262 浏览 10 评论 0原文

我有一个 DataTable,试图使用 System.Linq.Enumerable 上的 AsEnumerable 扩展方法对其进行枚举。问题在于 System.Data.DataTableExtensions 上有一个名称相同的扩展方法。我需要在类中使用两个命名空间,因此删除其中一个 using 语句不是一种选择。

如何声明我想要 System.Linq.Enumerable 中的 AsEnumerable 方法而不是 System.Data.DataTableExtensions ?

I have a DataTable that I'm trying to enumerate over with the AsEnumerable extension method on System.Linq.Enumerable. The problem is that there is an identically named extension method on System.Data.DataTableExtensions. I need to use both namespaces in my class so removing one of the using statements is not an option.

How do I declare that I want the AsEnumerable method from System.Linq.Enumerable and not the System.Data.DataTableExtensions?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

生生不灭 2024-09-11 03:17:53

DataTable 不实现 IEnumerable,甚至不实现 IEnumerable,因此您无法直接对其调用 Enumerable.AsEnumerable()。这就是 DataTableExtensions.AsEnumerable() 的首要用途。

DataTable does not implement IEnumerable<T>, or even IEnumerable, so you cannot call Enumerable.AsEnumerable() on it directly. That is what DataTableExtensions.AsEnumerable() is for in the first place.

有木有妳兜一样 2024-09-11 03:17:53

它们只是静态方法,所以你可以这样做:

DataTable dt;
System.Linq.Enumerable.AsEnumerable(dt);

They're just static methods so you could do this:

DataTable dt;
System.Linq.Enumerable.AsEnumerable(dt);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文