ListMerger.ThreeWayMerge<T,U> 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
给定一个基线和两个当前列表,计算合并的结果。 基线和当前列表之间的差异根据以下操作进行分析: * 将新项添加到前面 (索引 0) * 从任何位置删除项。此方法派生有序操作列表,该列表会将基线转换为每个当前列表,将基线组合在一起,并将其应用于基线以生成结果。 在列表中维护操作的顺序,而不是在列表中进行维护;例如,如果基线为 {0} ,第一个是, {1,0} 第二个是 {2,0} ,则结果可能是 {1,2,0} 或 {2,1,0} 。 两种格式都同样有效。
public static System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<T,U>> ThreeWayMerge<T,U> (System.Collections.Generic.IReadOnlyList<System.Collections.Generic.KeyValuePair<T,U>> first, System.Collections.Generic.IReadOnlyList<System.Collections.Generic.KeyValuePair<T,U>> second, System.Collections.Generic.IReadOnlyList<System.Collections.Generic.KeyValuePair<T,U>> baseline, System.Collections.Generic.IEqualityComparer<T> keyComparer = default, System.Collections.Generic.IEqualityComparer<U> valueComparer = default, Microsoft.VisualStudio.Settings.Telemetry.ISettingsLogger logger = default);
static member ThreeWayMerge : System.Collections.Generic.IReadOnlyList<System.Collections.Generic.KeyValuePair<'T, 'U>> * System.Collections.Generic.IReadOnlyList<System.Collections.Generic.KeyValuePair<'T, 'U>> * System.Collections.Generic.IReadOnlyList<System.Collections.Generic.KeyValuePair<'T, 'U>> * System.Collections.Generic.IEqualityComparer<'T> * System.Collections.Generic.IEqualityComparer<'U> * Microsoft.VisualStudio.Settings.Telemetry.ISettingsLogger -> seq<System.Collections.Generic.KeyValuePair<'T, 'U>>
Public Shared Function ThreeWayMerge(Of T, U) (first As IReadOnlyList(Of KeyValuePair(Of T, U)), second As IReadOnlyList(Of KeyValuePair(Of T, U)), baseline As IReadOnlyList(Of KeyValuePair(Of T, U)), Optional keyComparer As IEqualityComparer(Of T) = Nothing, Optional valueComparer As IEqualityComparer(Of U) = Nothing, Optional logger As ISettingsLogger = Nothing) As IEnumerable(Of KeyValuePair(Of T, U))
类型参数
- T
- U
参数
- first
- IReadOnlyList<KeyValuePair<T,U>>
- second
- IReadOnlyList<KeyValuePair<T,U>>
- baseline
- IReadOnlyList<KeyValuePair<T,U>>
- keyComparer
- IEqualityComparer<T>
- valueComparer
- IEqualityComparer<U>
- logger
- ISettingsLogger
返回
- IEnumerable<KeyValuePair<T,U>>
例外
当 first 、 second 或 baseline 为 null 时引发。