private String fetchTypesPackageName(final Token token, final Ir ir)
    {
        if (!shouldSupportTypesPackageNames)
        {
            return ir.applicableNamespace();
        }

        if (token.packageName() != null)
        {
            return token.packageName();
        }

        return ir.applicableNamespace();
    }
Create a new C# DTO {@link CodeGenerator}.

@param ir            for the messages and types.
@param shouldSupportTypesPackageNames generator support for types in their own package.
@param outputManager for generating the DTOs to.
sbe-tool/src/main/java/uk/co/real_logic/sbe/generation/csharp/CSharpDtoGenerator.java