Üçüncü listede birleştirmem ve yinelenen değerleri bu listelerden kaldırmam gereken iki listem var
Açıklamak biraz zor, bu yüzden bana kodu neye benzediğini ve sonuç olarak ne istediğini gösteren bir örnek göstereyim, örnekte ResultAnalysisFileSql sınıfı değil int türünü kullanıyorum.
first_list = [1, 12, 12, 5]
second_list = [12, 5, 7, 9, 1]
İki listenin birleştirilmesinin sonucu şu listeyle sonuçlanmalıdır: Sonuç_listesi = [1, 12, 5, 7, 9]
Sonucun, iki "12" değeri de dahil olmak üzere ilk listeye ve ikinci_listede ek bir 12, 1 ve 5 değerine sahip olduğunu fark edeceksiniz.
ResultAnalysisFileSql sınıfı
[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;
}
}
Kopyaları birleştirmek ve kaldırmak için herhangi bir örnek kod var mı?