Если у нас есть следующий метод:
private void DoSomething(object argument)
{
// Do something with the argument here
}
вы, вероятно, знаете, что он может быть присвоен переменной-делегату, например:
Action<object> asDelegate = DoSomething;
, чтобы выполнить то же назначениеиспользуя анонимный метод, мы можем использовать лямбда-выражение:
Action<object> asDelegate = (object argument) =>
{
// Do something with the argument here
}
Итак, в вашем примере метод testNullInsert можно написать так:
[TestMethod, Asynchronous]
public void testNullInsert()
{
wipeTestData((string errorString) =>
{
IdentityProperties properties = new IdentityProperties(getContext());
properties.setUserName(DATABASE_TEST);
postUserEdit(properties, testNullInsertContinue2);
});
}
Все, что я там сделалзаменено имя testNullInsertContinue1 лямбда-выражением, содержащим ту же функциональность.Вы также можете сделать то же самое с testNullInsertContinue2, если хотите.
Как только вы лучше освоите использование лямбда-выражений, вы можете отбросить такие вещи, как скобки вокруг аргумента (если есть только один аргумент) и типыиз аргументов, которые компилятор может часто выводить из них, но я написал это так, чтобы попытаться дать вам как можно более четкое представление о том, что происходит.Надеюсь, это поможет.