1

我正在尝试在其中添加一些逻辑。但我不确定如何添加第二个条件……
例如:

        foreach (FolderAssetInfo e in folderAssetsList)
        {
            var foundAsset = databaseAssetsList.Find(a => a.AssetFullName == e.AssetFullName);
            //I want to add an AND logic inside the parenthesis such as:
            //a => a.AssetFullName == e.AssetFullName && a.AssetFirstName == e.AssetFirstName)

            if (foundAsset != null)
            {
                Console.WriteLine(Found it!);
            }
        }

我怎样才能做到这一点?

4

1 回答 1

2

你的语法很完美:

var foundAsset = databaseAssetsList.Find(a => a.AssetFullName == e.AssetFullName && a.AssetFirstName == e.AssetFirstName);

基本上,这Predicate<T>只是返回布尔值的语法。注释 ( a.AssetFullName == e.AssetFullName && a.AssetFirstName == e.AssetFirstName) 中的语法将返回一个布尔值,如所写,因此它适用于谓词。


您确实有语法错误的一个地方是您调用Console.WriteLine- 这将需要您添加引号:

Console.WriteLine("Found it!"); // Quotes are required here!
于 2012-06-19T16:58:19.580 回答