簡體   English   中英

多列查詢 - Nhibernate 使用 QueryOver

[英]Multiple columns query - Nhibernate using QueryOver

我正在將 NHibernate 與 oracle db 一起使用,並且我想進行一個選擇許多列的查詢。 例如,假設我有一個名為Soldiers 的表,其中包含以下列:

ID、名字和姓氏。

我想選擇並返回所有士兵的名字和姓氏,所以在 sql 中它會是這樣的: SELECT FIRSTNAME, LASTNAME FROM SOLDIERS;

我如何使用 QueryOver 在代碼中做到這一點?

要使用QueryOver必須有映射類Soldier 那是必須的 但是很容易使用 QueryOver 來獲取所有的名字和姓氏:

Soldier soldier = null;
var list = session
    .QueryOver<Soldier>(() => soldier)
    .SelectList(l => l
        .Select(x => x.LastName).WithAlias(() => soldier.LastName)
        .Select(x => x.FirstName).WithAlias(() => soldier.FirstName)
    )
    .TransformUsing(Transformers.AliasToBean<Soldier>())
    // .Take(10) just 10
    .List<Soldier>();

Assert.IsTrue(list.First().FirstName != null);
Assert.IsTrue(list.First().LastName != null);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM