I experimented with Dapper and Dapper.Contrib. I have the following class:
public class Customer
{
public int Id { get; set; }
public string FirstNam
Dapper.Contrib supports the Table
attribute. Use it to manually specify the name of the table that an entity uses. See the docs for further information.
Alternatively there is a static delegate on SqlMapperExtensions
called TableNameMapper. You can replace this with an implementation that performs the pluralization. PluralizationService in the framework can help you here.
It is used as follows:
SqlMapperExtensions.TableNameMapper = (type) => {
// do something here to pluralize the name of the type
return type.Name;
};
Use the 'Table' data annotation attribute on your entity class as follows:
[Table("Customer")]
public class Customer
{
public int Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public DateTime DateOfBirth { get; set; }
public bool Active { get; set; }
}