Skip to content

Analyzer + fix, generate mapping lambda #3

@JohanLarsson

Description

@JohanLarsson

Before:

using (var db = new NpgsqlConnection(ConfigurationManager.ConnectionStrings["Database"].ConnectionString))
{
    using (var command = db.CreateCommand("SELECT id, text FROM foos WHERE id= @id", new NpgsqlParameter("id", 1)))
    {
        if (command.TrySingle(x => new Foo(), out var result))
        {
            return result;
        }
    }
}

Or:

using (var db = new NpgsqlConnection(ConfigurationManager.ConnectionStrings["Database"].ConnectionString))
{
    using (var command = db.CreateCommand("SELECT id, text FROM foos WHERE id= @id", new NpgsqlParameter("id", 1)))
    {
        if (command.TrySingle<Foo>(out var result))
        {
            return result;
        }
    }
}

After:

using (var db = new NpgsqlConnection(ConfigurationManager.ConnectionStrings["Database"].ConnectionString))
{
    using (var command = db.CreateCommand("SELECT id, text FROM foos WHERE id= @id", new NpgsqlParameter("id", 1)))
    {
        if (command.TrySingle(x => new ImmutableFoo(x.GetInt32(0), x.GetString(1)), out var result))
        {
            return result;
        }
    }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions