Do tej pory używałem Entity Framework i bazy danych SQL Server. Tak więc mogę reprezentować moją nazwę tabeli jako nazwę klasy i nazwy właściwości jako właściwości takie jak następujące.Nazywanie klas C# ze złych kolumn tabeli
class Product{
public string Id { get; set;}
public string Name { get; set;}
}
Nazwy tabeli i kolumny są takie same w mojej klasie.
Ale teraz będę pracował nad projektem korzystającym z bazy danych Postgresql. Nazwy tabel i nazwy kolumn są takie.
- Stoły
products
,product_categories
(małymi literami) - Kolumny
product_id, product_name, category_id
, ....
Więc nie chcesz używać nazwy klas tak:
class products {
public string product_id { get; set; }
public string product_name { get; set; }
public string category_id { get; set; }
}
to wygląda jak brzydkie konwencje nazewnictwa. Jak mogę rozwiązać ten problem?
Czy mówisz o czymś takim: http://stackoverflow.com/questions/2944974/t4-fieldname-in-camelcase-without-underscore –
EF ma możliwość używania metadanych do opisywania nazw pól, zobacz (https : //entityframework.codeplex.com/wikipage? title = Code% 20First% 20Annotations) i możesz użyć dostawcy PostGreSql z EF (http://www.codeproject.com/Articles/783552/Using-PostgreSQL-with-Entity -Framework-in-ASP-NET) – Ruskin