c# - How do you create a generic method in a class? -


i trying follow dry principle. have sub looks this?

private sub dosupplymodel          outputline("item summaries")         dim itemsumms new supplymodel.itemsummaries(_currentsupplymodel, _excelrows)         itemsumms.fillrows()         outputline("")          outputline("numbered inventories")         dim numinvs new supplymodel.numberedinventories(_currentsupplymodel, _excelrows)         numinvs.fillrows()         outputline("")     end sub 

i collapse these single method using generics. record, itemsummaries , numberedinventories both derived same base class databuilderbase.

i can't figure out syntax allow me itemsumms.fillrows , numinvs.fillrows in method.

fillrows declared public overridable sub fillrows in base class.

thanks in advance.

edit
here end result

private sub dosupplymodels()      dosupplymodeltype("item summaries",new datablocks(_currentsupplymodel,_excelrows)     dosupplymodeltype("data blocks",new datablocks(_currentsupplymodel,_excelrows)  end sub  private sub dosupplymodeltype(byval outputdescription string, byval type databuilderbase)     outputline(outputdescription)     type.fillrows()     outputline("") end sub 

but answer own question...i have done this...

private sub dosupplymodels()      dosupplymodeltype(of projections)("item summaries")     dosupplymodeltype(of datablocks)("data blocks")  end sub  private sub dosupplymodeltype(of t databuilderbase)(byval outputdescription string, byval type t)     outputline(outputdescription)     dim type new databuilderbase (_currentsupplymodel,_excelrows)     type.fillrows()     outputline("") end sub 

is right?

seth

as others have pointed out, don't need generics want, answer technical question completeness:

private sub mymethod(of t databuilderbase)(byval instance t)     instance.fillrows() end sub 

and call method doing this:

mymethod(of itemsummaries)(new supplymodel.itemsummaries(...)) 

Comments

Popular posts from this blog

javascript - Enclosure Memory Copies -

php - Replacing tags in braces, even nested tags, with regex -