Outbreak Labs

I can do anything I want to. And so can you.

EasyNetQ on CoreCLR / DNXCore50, removing port of Protobuf-net

Disappointed with the seeming disinterest of the official RabbitMQ team in supporting CoreCLR, I was pleased to see that someone had gone and done it themselves. The logical next step once we've got the base RabbitMQ client available is to port EasyNetQ. I've done just that: https://github.com/SapientGuardian/EasyNetQ

I'm also pleased to note that there's an alpha build of Protobuf-net that's at least as good as the one I had going, so I've removed my fork from github so as not to confuse anyone into thinking it had value at this point.

MySQL Connector/Net for CoreCLR / DNXCore50

After several failed attempts, I have managed to strip down and modify the MySQL Connector/Net library enough to get it working on DNXCore50. I would strongly advise against using this in production, but it may work for testing purposes while waiting for an official release from Oracle. Here is the repo.

The following basic scenario works, which was my goal:

string connectionString = "server=;userid=my_user;password=my_password;database=my_db;default command timeout=10;Connection Timeout=5;";

    using (var conn = new MySqlConnection(connectionString))
        var cmd = new MySqlCommand(@"select col1, col2 from data where id = @id", conn);
        cmd.Parameters.AddWithValue("@id", "myId");
        var reader = cmd.ExecuteReader();

        string col1data;
        string col2data;

        if (reader.Read())

            if (!reader.IsDBNull(0))
                col1data = reader.GetString(0);

            if (!reader.IsDBNull(1))
                col2data = reader.GetString(1);