迭代 DataView 进行更新

发布于 2024-09-10 01:23:32 字数 341 浏览 1 评论 0原文

我有一个 DataView,

inputView.RowFilter = "isnull(" + ID1 + ",'')<>'' and isnull(" + reason + ",0)=0";

在此过滤器之后进行过滤,我必须将 inputView 的“IsVerified”列更新为“1”

LINQ 中是否有某些内容可以执行以下操作?

inputView.RowFilter.ForEach(x=>x.Field<IsVerified> =1);

I have a DataView which filters

inputView.RowFilter = "isnull(" + ID1 + ",'')<>'' and isnull(" + reason + ",0)=0";

after this filter i have to update "IsVerified" column of inputView to "1"

Is there something in LINQ to execute the following?

inputView.RowFilter.ForEach(x=>x.Field<IsVerified> =1);

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

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

发布评论

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

评论(1

温馨耳语 2024-09-17 01:23:32

如果要在 DataView 上使用 LINQ,则必须在 DataView 上创建自己的扩展方法。 DataView 本身没有 .ToList() 方法,而 .ForEach() 是在该方法中定义的。

为 DataView 创建扩展方法。

public static class DataViewExtensions
{
    public static List<DataRowView> ToList(this DataView v)
    {
        List<DataRowView> foo = new List<DataRowView>();

        for (int i = 0; i < v.Count; i++)
        {
            foo.Add(v[i]);
        }
        return foo;
    }

}

您的 DataView 现在可以这样调用:

inputView.ToList().ForEach(x=>x["IsVerified"]=1);

一些开发人员可能更喜欢完整的 .NET foreach (var x in y) 语句,但是这个也会做同样的事情。

完整的控制台应用程序概念验证:http://pastebin.com/y9z5n6VH

If you want to use LINQ on your DataView, you'll have to create your own extension method on the DataView. The DataView does not natively have a .ToList() method, which is where the .ForEach() is defined.

Create your Extension Method for the DataView.

public static class DataViewExtensions
{
    public static List<DataRowView> ToList(this DataView v)
    {
        List<DataRowView> foo = new List<DataRowView>();

        for (int i = 0; i < v.Count; i++)
        {
            foo.Add(v[i]);
        }
        return foo;
    }

}

Your DataView can now be called this like:

inputView.ToList().ForEach(x=>x["IsVerified"]=1);

Some developers may prefer the full .NET foreach (var x in y) statement, but this will do the same.

A full console application proo-of-concept: http://pastebin.com/y9z5n6VH

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