{"action":"closed","issue":{"url":"https://api.github.com/repos/LuccaSA/RestDrivenDomain/issues/15","repository_url":"https://api.github.com/repos/LuccaSA/RestDrivenDomain","labels_url":"https://api.github.com/repos/LuccaSA/RestDrivenDomain/issues/15/labels{/name}","comments_url":"https://api.github.com/repos/LuccaSA/RestDrivenDomain/issues/15/comments","events_url":"https://api.github.com/repos/LuccaSA/RestDrivenDomain/issues/15/events","html_url":"https://github.com/LuccaSA/RestDrivenDomain/issues/15","id":153765373,"number":15,"title":"Utilisation d'un concateneur d'expression ","user":{"login":"jbbeuzelin","id":5744893,"avatar_url":"https://avatars.githubusercontent.com/u/5744893?v=3","gravatar_id":"","url":"https://api.github.com/users/jbbeuzelin","html_url":"https://github.com/jbbeuzelin","followers_url":"https://api.github.com/users/jbbeuzelin/followers","following_url":"https://api.github.com/users/jbbeuzelin/following{/other_user}","gists_url":"https://api.github.com/users/jbbeuzelin/gists{/gist_id}","starred_url":"https://api.github.com/users/jbbeuzelin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jbbeuzelin/subscriptions","organizations_url":"https://api.github.com/users/jbbeuzelin/orgs","repos_url":"https://api.github.com/users/jbbeuzelin/repos","events_url":"https://api.github.com/users/jbbeuzelin/events{/privacy}","received_events_url":"https://api.github.com/users/jbbeuzelin/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2016-05-09T12:29:52Z","updated_at":"2016-05-30T15:07:50Z","closed_at":"2016-05-30T15:07:50Z","body":"Intégrer le code suivant dans RDD \r\n\r\npublic static Expression<Func<TEntity, bool>> OrFactory<TEntity>(params Expression<Func<TEntity, bool>>[] filters)\r\n\t\t{\r\n\t\t\treturn Factory((aggr, newExpr) => Expression.OrElse(aggr, newExpr), filters);\r\n\t\t}\r\n\t\tpublic static Expression<Func<TEntity, bool>> AndFactory<TEntity>(params Expression<Func<TEntity, bool>>[] filters)\r\n\t\t{\r\n\t\t\treturn Factory((aggr, newExpr) => Expression.AndAlso(aggr, newExpr), filters);\r\n\t\t}\r\n\r\n\t\tstatic Expression<Func<TEntity, bool>> Factory<TEntity>(Func<Expression, Expression, Expression> aggregator, params Expression<Func<TEntity, bool>>[] filters)\r\n\t\t{\r\n\t\t\tif (filters.Length == 0)\r\n\t\t\t\treturn null;\r\n\r\n\t\t\tvar seed = filters[0];\r\n\t\t\tif (filters.Length == 1)\r\n\t\t\t\treturn seed;\r\n\r\n\t\t\tvar param = seed.Parameters[0];\r\n\t\t\tvar visitor = new ParameterChanger(param);\r\n\t\t\tvar correctParamsFilters = filters.Select(f => visitor.Visit(f.Body));\r\n\r\n\t\t\treturn Expression.Lambda<Func<TEntity, bool>>(correctParamsFilters.Skip(1).Aggregate(seed.Body, aggregator), param);\r\n\t\t}"}}
{"actor":{"display_login":"nfaugout"}}