[
https://issues.apache.org/jira/browse/THRIFT-1212?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13052078#comment-13052078
]
Bryan Duxbury commented on THRIFT-1212:
---------------------------------------
bq. I can't change idl file because it'll break protocol
This is false. If you do nothing but change names, it'll work just fine.
The bottom line is that I am generally against behavior that users will see as
predictable. I would rather add a constraint that says structs can't have
members with the same name - in any language - or change the way that the C#
generator names its members.
> Members capital case conflict
> -----------------------------
>
> Key: THRIFT-1212
> URL: https://issues.apache.org/jira/browse/THRIFT-1212
> Project: Thrift
> Issue Type: Bug
> Components: C# - Compiler
> Affects Versions: 0.6.1
> Environment: Windows 7
> Reporter: Vadim Chekan
> Priority: Minor
>
> When generating "csharp" target off the following structure:
> ===
> struct Order {
> 1: string col, // sort column name
> 2: i32 order // asc(1) or desc(0)
> }
> ===
> the code is generated:
> class Order { public int Order ...
> This code fails to compile in C# compiler because member name is the same as
> containing clsss name, which is invalid in C#.
> Perhaps there must be a check when generating members and if capitalized
> member name turns out to be the same as containing class name, then prepend
> it with underscore.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira