TypeLib for interop assembly changes case of method name
-
I have a scenario similar to the following: Assume a single assembly (SomeAssembly.dll) contains the following types: 1. Class B inherits from class A 2. Class A implements properties Moe, Larry and Curly, all of type ArrayList. 3. Class B implements a public interface containing all of the public members of both classes A and B. The problem: I export the type library for SomeAssembly.dll using
Regasm.exe SomeAssembly.dll /tlb:SomeAssembly.tlb /codebase
When I view the generated type library, I see that while properties Moe and Larry appear as "Moe" and "Larry" (their proper case is preserved), property Curly is exported as "curly" (all lower case). So far, I haven't been able to find an explanation for this behavior, and while the CCW works just fine, the name change is a little disconcerting for my client. The only similar article I was able to find referenced a known issue whereby if there was another "curly" property that was written to the type library first, all following same-named properties would bear the lowercase name, but there is only one "Curly" property in my assembly. Any ideas? Failing a solution, is there any attribute decoration I might use to force the proper case in the generated type library? Thanks.
The most exciting phrase to hear in science, the one that heralds the most discoveries, is not 'Eureka!' ('I found it!') but 'That's funny...’