Напишите метод для веб-метода в C#, используя nrefactory

Я использую nrefactory для изменения кода C#. У меня есть различные веб-методы в моем коде. Я хочу разработать другой метод над каждым web method в моем коде C#.

Пример ввода, оригинальный метод C# в файле C#:

[WebMethod]
public static MoneyTransfer[] GetCities(int StateID, int countryID)
{
....
....
}

Образец вывода:

private bool validGetCities(int StateID, int countryID)
{
    if (StateID <= 0)
        return false;

    if (countryID <= 0)
        return false;

    return true;
}

[WebMethod]
public static MoneyTransfer[] GetCities(int stateID, int countryID)
{
    if(validGetCities(stateID, countryID))
    {
    ....
    ....
    }
}

Здесь, метод validGetCities() проверит все входные параметры для условия не <=0. Выполните web method, только если validGetCities() вернет true. Я мог бы написать выражение сопоставления с образцом, используя nrefactory, как показано ниже,

        var expr = new MethodDeclaration
        {
            Modifiers = Modifiers.Private,
            ReturnType = new PrimitiveType("bool"),
            Name = "validGetCities",

            Body = new BlockStatement{
                new ReturnStatement {
                    Expression = new PrimitiveExpression("true")
                }
            }
        };

Это выражение сгенерирует следующий фрагмент кода,

private bool validGetCities()
{
    return "true";
}

Итак, я мог бы сгенерировать выражение для 0 или фиксированного количества параметров. Как я могу заставить его работать для нескольких входных параметров.

0 ответов

Другие вопросы по тегам