Azure / autorest.csharp

Extension for AutoRest (https://github.com/Azure/autorest) that generates C# code
MIT License
142 stars 165 forks source link

Consolidate Rest Client service method generation #3768

Closed AlexanderSher closed 1 month ago

AlexanderSher commented 1 year ago

Consolidate generation of Rest Client (for DPG - public client is treated as Rest Client) service methods with ability to switch between HLC-style method structure, e.g.:

CreateXxxRequest(BinaryData bd)
{
    var rc = new RequestContent();
    rc.Writer.Write(bd.ToArray());
    request.RequestContent = rc;
}

Response<Y> Xxx(BinaryData bd)
{
    ///
    var message = CreateXxxRequest(bd);
    ///
}

to DPG-style method structure

Response<Y> XxxValue(BinaryData bd)
{
    var rc = new RequestContent();
    rc.Writer.Write(bd.ToArray());
    var response = Xxx(rc);
    return (Y)response;
}

Response Xxx(RequestContent rc)
{
    var message = CreateXxxRequest(rc);
    ///
}

CreateXxxRequest(RequestContent rc)
{
    request.RequestContent = rc;
}
ArthurMa1978 commented 4 months ago

Push to MGC plugin