2013-05-03 60 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