© 2026 Hedgehog Software, LLC

TwitterGitHubDiscord
More
CommunitiesDocsAboutTermsPrivacy
Search
Star
Setup for Free
C#C
C#•16mo ago•
7 replies
aa55h

Mono.Cecil TypeReference modifies TypeDefinition

i have this code:
MemberReference member = instruction.Operand; 
if (Mappings.GetType(member.DeclaringType.Name, DefaultNamespace) is TypeDefinitionEntry typeDefinition)
{
    WriteIfVerbose($"Remapping reference to {member.Name}'s type {member.DeclaringType.Name} -> {typeDefinition[TargetNamespace]}");
    member.DeclaringType.Name = typeDefinition.Names[TargetNamespace];
}
MemberReference member = instruction.Operand; 
if (Mappings.GetType(member.DeclaringType.Name, DefaultNamespace) is TypeDefinitionEntry typeDefinition)
{
    WriteIfVerbose($"Remapping reference to {member.Name}'s type {member.DeclaringType.Name} -> {typeDefinition[TargetNamespace]}");
    member.DeclaringType.Name = typeDefinition.Names[TargetNamespace];
}

the problem is the second line in the if statement body, it seems like it also modifies the class the member belongs to, and not only the reference to it, any idea why?
C# banner
C#Join
We are a programming server aimed at coders discussing everything related to C# (CSharp) and .NET.
61,871Members
Resources

Similar Threads

Was this page helpful?
Recent Announcements

Similar Threads

✅ Mono Cecil not assembled
C#CC# / help
2y ago
Help with Mono.Cecil
C#CC# / help
3y ago
✅ Mono.Cecil.ParameterDefinition.HasDefault
C#CC# / help
4y ago
Mono.Cecil weaver messed up branch targets
C#CC# / help
2y ago