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();
}
}
class Input {
render() {
return <input {...props} />
}
}
class MyComponent extends Component {
constructor(props) {
super(props);
this.state = {};
}
handleChange = e => {
this.setState({e.target.value});
}
render() {
return <Input type="text" onChange={this.handleChange} value={this.state.value} />
}
}
class Foo {
constructor() {}
}
function Foo() {
}
var data = [
'08-10-2011',
'08-04-2007',
'03-11-2008',
'03-03-2008',
'03-14-2008',
'03-28-2005',
'03-20-2005'
];
function decodeDate(arr) {
var i, len = data.length,
obj = {},
date,
year,
month;
for (i = 0; i < len; i++) {
date=arr[i].split("-");
if(!obj[year=date[2]])obj[year]={};
if(!obj[year][month=date[0]]){
obj[year][month]=[date[1]];
}else{
obj[year][month].push(date[1]);
}
}
return obj;
}
console.log(decodeDate(data));
var trigger = function (el, type) {
var event;
if (document.createEvent) {
event=document.createEvent('HTMLEvents');
event.initEvent(type,true,true);
} else {
event=document.createEventObject();
event.eventType=type;
}
event.eventName=type;
if (document.createEvent) {
el.dispatchEvent(event);
} else {
el.fireEvent('on'+event.eventType,event);
}
};