2013-05-03 71 views
2

有什麼方法可以返回ServiceStack.OrmLite中的表的一個子集?
喜歡的東西:在ServiceStack.OrmLite中選擇數據的子集

public class MyStuff 
{ 
    public Guid Id { get; set; } 
    public string Name { get; set; } 
    public byte[] Data { get; set; } // Some large blob, which is not desired in the list 
} 

var somestuff = db.Select<MyStuff>(x => new { Id = x.Id, Name = x.Name }); 

我真的希望避免手工的東西,像「從某處選擇布拉布拉」 ......

回答

5

我有完全相同的問題。以下是我所做的:

public class MyStuff 
{ 
    public Guid Id { get; set; } 
    public string Name { get; set; } 
    public byte[] Data { get; set; } 
} 

var somestuff = Db.Select<MyStuff>(p => p.Select(x => new { x.Id, x.Name })); 

對Db.Select所作的唯一更改,與上面所做的相同。

+0

輝煌!正是我在找什麼。他們應該把它放在文檔中。 – KTW 2013-05-17 06:02:35

+2

文檔wiki是開放的,所以只要你發現缺失的東西,隨時提供幫助。 – jeffgabhart 2013-10-18 17:50:51

5

爲您的基本信息,創建一個類,並設置別名。

[Alias("MyStuff")] 
public class MyBasicStuff 
{ 
    public Guid Id { get;set; } 
    public string Name { get; set; } 
} 

var basicStuff = db.Select<MyBasicStuff>(); 
+0

謝謝。不是我期望的動態解決方案,但比基於文本的查詢更好。 – KTW 2013-05-10 05:12:08