Я смотрю на этот проект с открытым исходным кодом, и свободный API выглядит следующим образом:
baseEngine.For<Foo1>()
.Setup(f => f.Value)
.MustEqual(1);
Затем перечислите параметры метода MustEqual:
public static M MustEqual<M, T, R>(this IMustPassRule<M, T, R> mpr, R value)
{
return mpr.MustPassRule(new EqualRule<R>(value));
}
для более подробной информации: http://rulesengine.codeplex.com/SourceControl/changeset/view/9077#137411
Итак, что я пытаюсь получить, так это то, что вызов MustEqual передается только в виде одного аргумента, так как он свободно говорит, он каким-то образом неявно выбирает другие необходимые параметры из ранее связанных вызовов? 1011 *