c# - similar function refactoring pattern -


i have 20 functions same pattern, run on array of sites, create siteoperation site object , perform operation ( in case 1 param there none or more)

int wantedbandwidthinlbps = 2048 / 8; foreach (sites site in _sitesmanagement.getall()) {  siteoperation siteoperation = new siteoperation(site);  siteoperation.limitbandwidth(wantedbandwidthinlbps); }  foreach (sites site in _sitesmanagement.getall()) {  siteoperation siteoperation = new siteoperation(site);  siteoperation.killjames(); }  foreach (sites site in _sitesmanagement.getall()) {  siteoperation siteoperation = new siteoperation(site);  siteoperation.flytomoon(2012, new taskidentifier(10,20)); } 

is possible wrap code, send action lets _sitesmanagement run action on sites ?

try this:

void performoperationonallsites(action<siteoperation> doit) {     foreach (sites site in _sitesmanagement.getall()) {         siteoperation siteoperation = new siteoperation(site);         doit(siteoperation);     } }  ...  _sitesmanagement.performoperationonallsites(op => op.limitbandwidth(wantedbandwidthinlbps)); _sitesmanagement.performoperationonallsites(op => op.killjames()); _sitesmanagement.performoperationonallsites(op => op.flytomoon(2012, new taskidentifier(10,20)); 

Comments

Popular posts from this blog

java - Play! framework 2.0: How to display multiple image? -

gmail - Is there any documentation for read-only access to the Google Contacts API? -

php - Controller/JToolBar not working in Joomla 2.5 -