More of a note really, but lets (for example) say we've defined a Contract for our Managed Addin Framework (MAF):
[AddInContract]
public interface ISimpleCalc : IContract
{
double Add(double x, double y, params double[] theRest);
}
if we use the PipeLineBuilder to generate the Pipeline for us, we'll find the contact defined in our 'AddInView' and 'HostView' projects as:
public interface ISimpleCalc
{
double Add(double x, double y, double[] theRest);
}
Which is obviously a problem as we're expecting to just be able to use this in our hosts as:
or
instead, we have to use:
Add(1,2, new double[] {3,4,5,6});
or
Fortunately this is purely to do with the Pipeline builder, just editing the two contract definitions in the AddInView and HostView, just add the params arg in:
public interface ISimpleCalc
{
double Add(double x, double y, params double[] theRest);
}
Job done...
I've got the Pipeline code now, so I'm gonna see if I can add this in!