Silverlight 4.0 DomainService能否返回单个自定义类型?

Silverlight 4.0 DomainService能否返回单个自定义类型?,silverlight-4.0,wcf-ria-services,Silverlight 4.0,Wcf Ria Services,我希望在我的域服务中使用类似以下内容的方法: public SystemState GetSystemStatus() { return new SystemStatus { InterestingStatusValue1 = 1223, OtherInterstingStatusValue = "abc", } } 那不行。Silverlight客户端应用程序不会自动生成任何内容。但是,如果我将此方法设置为IQueryable方法,则会

我希望在我的域服务中使用类似以下内容的方法:

public SystemState GetSystemStatus()
{
    return new SystemStatus
    {
        InterestingStatusValue1 = 1223,
        OtherInterstingStatusValue = "abc",
    }
}
那不行。Silverlight客户端应用程序不会自动生成任何内容。但是,如果我将此方法设置为IQueryable方法,则会在客户机上生成一些内容。我将获得上下文对象的SystemState属性和查询方法

没有办法让这成为一个简单的WCF呼叫吗?我想我可以在我的RIA网站上安装一个支持WCF Silverlight的服务,然后设置一个服务引用(这不对吗?)(为什么我不能在Silverlight应用程序中看到服务引用?)


乍一看,RIA服务似乎强制使用一种非常以数据为中心/简单的CRUD,这对于表编辑器来说非常好,但对于在数据网格上拖动的LOB应用程序来说就不那么好了。您可以使用一个属性仅返回一个实体(假设SystemState是您的实体):

例:

请记住,这仍然是一个查询,Ria服务将在您的DomainContext中生成一个方法,如:

EntityQuery<SystemState> GetSystemStatusQuery()

我不知道您的返回类型有多复杂,但我想如果可以序列化,它会工作的(不确定)。

EDIT:在此处查看有关DomainService的更多详细信息:
EntityQuery<SystemState> GetSystemStatusQuery()
[Invoke]
public SystemState GetSystemStatus()
{
    return new SystemStatus
    {
        InterestingStatusValue1 = 1223,
        OtherInterstingStatusValue = "abc",
    }
}