Mam bazę danych z kolumnami id, takimi jak BookId, AuthorId, itp. Moje pliki kodu mają jednak właściwość Id. Próbuję przekonwertować części programu, które używają NHibernate z Dapper, więc staram się wyeliminować konieczność posiadania zarówno właściwości Id, jak i BookId. NHibernate ma wbudowaną mapę tożsamości, która odwzorowuje BookId na właściwość Id obiektów Book i podobnie AuthorId na właściwość Id na obiektach autora.Jak odwzorować kolumnę tożsamości, która ma inną nazwę, z Dapper?
Czy istnieje sposób na zrobienie tego Dappera, poza podaniem aliasu do kolumny, w zapytaniu sql?
public class Book {
public int Id { get; set; }
public string Name { get; set; }
}
public class Author {
public int Id { get; set; }
public string Name { get; set; }
}
Zapytanie próbka że używam wygląda następująco:
select * from Books b inner join Author a on a.AuthorId = b.AuthorId
Jeśli Wytworny nie obsługuje tego łatwo, wszelkie myśli na jakie inne opcje mam?
Zrobiłem to, używając aliasu dla kolumny. Dlaczego nie chcesz używać aliasu? – LordHits
@LordHits Próbuję tego uniknąć, ponieważ mam wiele kolumn, które są zwracane. Raczej nie będę musiał jawnie wypisać każdy w sql. Ponadto nie sądzę, że będzie działać zgodnie z oczekiwaniami przy połączeniach tabel –