[英]NHibernate's equivalent of LINQ to SQL's and EF's Translate<T>()
我有一個查詢,由於性能原因,我需要使用原始ADO.NET編寫實際命令(它涉及表值參數)。 使用LINQ to SQL或EF,我可以簡單地將DbCommand.ExecuteReader()
返回的DbDataReader
傳遞給DataContext.Translate<T>(DbDataReader)
或ObjectContext.Translate<T>(DbDataReader)
方法,它將轉換結果-設置為對象,返回IEnumerable<T>
。
NHibernate中是否有等效的API,我可以傳遞DbDataReader
/ IDataReader
甚至DbCommand
/ IDbCommand
並返回NHibernate實體?
也許有一種方法可以攔截由ISession.CreateQuery(string)
創建的命令的構造,以便我可以修改基礎的DbCommand
使其按需要的方式工作?
您可能可以創建一個自定義UserType來處理表值參數。
NHibernate不會在任何公共方法中公開DataReader->實體轉換。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.