private static void Main()
{
var list1 = new List<DB>
{
new DB {vopros = "1", url = "11"},
new DB {vopros = "2", url = "22"},
new DB {vopros = "3", url = "33"}
};
var list2 = new List<DB>
{
new DB {vopros = "2", url = "66"},
new DB {vopros = "3", url = "55"},
new DB {vopros = "5", url = "44"}
};
var except = list1.Except(list2, new DBComparer());
var except1 = list2.Except(list1, new DBComparer());
}
public class DB
{
public string vopros { get; set; }
public string otvet { get; set; }
public string url { get; set; }
}
public class DBComparer : IEqualityComparer<DB>
{
public bool Equals(DB x, DB y)
{
if (ReferenceEquals(x, y)) return true;
return x != null && y != null && x.vopros.Equals(y.vopros);
}
public int GetHashCode(DB obj)
{
return obj.vopros == null ? 0 : obj.vopros.GetHashCode();
}
}
Все библиотеки, которые встречал в них приходится явно указывать название папки с которой брать письма.
([\D])([\d])$1 $2
если на нее кликнуть должно открыться окно watsapp
whatsapp://send?text=Hello!
dynamic parse = JObject.Parse(rawString);
по каким признакам, кроме падения скорости
string GenerateText(string text)
{
return GenerateText(text, "Без заголовка");
}
string GenerateText(string title, string text)
{
return title + Environment.NewLine + text;
}string GenerateText(string title, string text = "Без заголовка")
{
return title + Environment.NewLine + text;
}string GenerateText(string title, string text)
{
return title + Environment.NewLine + (text ?? "Без заголовка");
}string GenerateText(string title, params string[] text)
{
return title + Environment.NewLine + string.Join(Environment.NewLine, text);
}
HttpClient client = new HttpClient();
var html = await client.GetStringAsync("http://example.com");Далее:var parsedHtml = new HtmlAgilityPack.HtmlDocument();
parsedHtml.LoadHtml(html);