繁体   English   中英

在Linq查询中使用自定义扩展方法

[英]Using Custom Extension Methods Inside Linq Query

我已经制作了自定义的In扩展方法,如下所示:

 public static class ExtensionMethods
    {
        public static bool In(this string str, IEnumerable<String> list)
        {
            foreach (var s in list)
            {
                if (s.Equals(str)) return true; 
            }

            return false; 
        }
    }

现在,我想在LINQ查询中使用它。 我该怎么办以及如何使用它?

我认为您的方法与Enumerable.Contains非常相似。 也许您可以只使用它。

如果您真的想使用您的方法,那么它将在LINQ to Objects查询中很好地工作,但是在数据库查询中将无法使用它。

你应该可以说

if (stringName.In(listVariableName)){....}

除非类ExtensionMethods位于其他名称空间上。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM