[ https://issues.apache.org/jira/browse/THRIFT-5253?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jens Geyer resolved THRIFT-5253. -------------------------------- Fix Version/s: 0.14.0 Resolution: Fixed > using Result in result name generates wrong IAsync interface > ------------------------------------------------------------ > > Key: THRIFT-5253 > URL: https://issues.apache.org/jira/browse/THRIFT-5253 > Project: Thrift > Issue Type: Bug > Components: netstd - Compiler > Affects Versions: 0.13.0 > Reporter: Matthias Jüttner > Assignee: Jens Geyer > Priority: Major > Fix For: 0.14.0 > > Attachments: Thrift5253.thrift > > Time Spent: 20m > Remaining Estimate: 0h > > Example: > > {code} > struct GetStringResult{ > 1: string thisIsAString > } > service MyService{ > GetStringResult GetString(1:GetStringParameters getStringParams) > } > {code} > > This produces two different classes with same Name; one in GetStringResult.cs > is the "correct" class and one in the service class. > When implementing an IAsync handler class something like this is generated: > {code} > public Task<MyService.GetStringResult> GetStringAsync(GetStringParameters > getStringParams, CancellationToken cancellationToken = > default(CancellationToken)) > { > } > {code} > So in this case this is the wrong GetStringResult class. > A workaround is to move the result struct into a different thrift file with > different namespace -- This message was sent by Atlassian Jira (v8.3.4#803005)