Zobacz wyniki ankiety na temat zarobków programistów w Polsce. Czytaj więcej..
1

1
 ISession s = Dal.Session;

 string queryString = @"select t.SellDate as SellDate, t.DocumentNumber as DocNo, t.PriceGross as Gross,
                            t.PaymentDate as PaymentDate, ts.SettlementValue as SettlementValue, ds.{Path} + '\' + ds.Name as FilePath
                           from TransactionSettlement ts, Transaction t, DocScanned ds
                            where ts.TransactionId = t.Id and t.DocID = ds.DocID and ts.PaymentId = :paymentID";

 query.SetInt32("paymentID", paymentID);
 IQuery query = s.CreateQuery(queryString);
 IList resultList = query.List();

Jak można "wrzucić" zwracane wyniki do asp.net datagrid mając dostęp do nich przez aliasy np. ...<asp:BoundColumn **DataField="SellDate"** DataFormatString="{0:d}" />...??

flag

1 Answer

1

W takiej postaci dostaniesz listę, gdzie wartości będą zawarte w array'u obiektów.

Jeśli chcesz osiągnąć to co napisałeś, czyli dostęp przez "aliasy" (czyli tak naprawdę odwołania do właściwości obiektu) to musisz zbudować obiekt do przeniesienia tych danych (DTO), czyli Data Transfer Object.

Na sieci znajdziesz wiele przykładów jak to zrobić przy użyciu NHibernate.

Pierwszy z brzegu przykład: http://www.junasoftware.com/blog/nhibernate-setresulttransformer-and-dto.aspx

link|flag
Miałem nadzieję że uda się to zrobić jakimś sposobem dynamicznie. Dziękuję za odpowiedź. – Mark May 21 at 13:50
Odpowiedź zadowalająca? :) – dario-g Jul 19 at 11:04

Your Answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.