Saya memiliki dua daftar Daftar yang perlu saya gabungkan di daftar ketiga dan menghapus nilai duplikat dari daftar itu
Agak sulit dijelaskan, jadi izinkan saya menunjukkan contoh seperti apa kode itu dan apa yang saya inginkan sebagai hasilnya, dalam sampel saya menggunakan tipe int bukan kelas ResultAnalysisFileSql.
first_list = [1, 12, 12, 5]
second_list = [12, 5, 7, 9, 1]
Hasil dari penggabungan dua daftar harus menghasilkan daftar ini: result_list = [1, 12, 5, 7, 9]
Anda akan melihat bahwa hasilnya memiliki daftar pertama, termasuk dua nilai "12", dan di second_list memiliki nilai tambahan 12, 1 dan 5.
Kelas ResultAnalysisFileSql
[Serializable]
public partial class ResultAnalysisFileSql
{
public string FileSql { get; set; }
public string PathFileSql { get; set; }
public List<ErrorAnalysisSql> Errors { get; set; }
public List<WarningAnalysisSql> Warnings{ get; set; }
public ResultAnalysisFileSql()
{
}
public ResultAnalysisFileSql(string fileSql)
{
if (string.IsNullOrEmpty(fileSql)
|| fileSql.Trim().Length == 0)
{
throw new ArgumentNullException("fileSql", "fileSql is null");
}
if (!fileSql.EndsWith(Utility.ExtensionFicherosErrorYWarning))
{
throw new ArgumentOutOfRangeException("fileSql", "Ruta de fichero Sql no tiene extensión " + Utility.ExtensionFicherosErrorYWarning);
}
PathFileSql = fileSql;
FileSql = ObtenerNombreFicheroSql(fileSql);
Errors = new List<ErrorAnalysisSql>();
Warnings= new List<WarningAnalysisSql>();
}
private string ObtenerNombreFicheroSql(string fileSql)
{
var f = Path.GetFileName(fileSql);
return f.Substring(0, f.IndexOf(Utility.ExtensionFicherosErrorYWarning));
}
public override bool Equals(object obj)
{
if (obj == null)
return false;
if (!(obj is ResultAnalysisFileSql))
return false;
var t = obj as ResultAnalysisFileSql;
return t.FileSql== this.FileSql
&& t.PathFileSql == this.PathFileSql
&& t.Errors.Count == this.Errors.Count
&& t.Warnings.Count == this.Warnings.Count;
}
}
Adakah kode sampel untuk menggabungkan dan menghapus duplikat?