是否可以将对象集合传递给 RIA 数据服务查询?我发送实体、Int 或原始类型数组没有问题,但是一旦我声明了这样的方法
public void GetLessonsConflicts(Lesson[] lessons)
{
}
我得到一个编译错误
“名为 'GetLessonsConflicts' 的操作不符合所需的签名。参数类型必须是实体类型或预定义的可序列化类型之一”
我只是想在保存数据之前在服务器端进行一些验证。我试过 List、IEnumerable 等。
谢谢
是否可以将对象集合传递给 RIA 数据服务查询?我发送实体、Int 或原始类型数组没有问题,但是一旦我声明了这样的方法
public void GetLessonsConflicts(Lesson[] lessons)
{
}
我得到一个编译错误
“名为 'GetLessonsConflicts' 的操作不符合所需的签名。参数类型必须是实体类型或预定义的可序列化类型之一”
我只是想在保存数据之前在服务器端进行一些验证。我试过 List、IEnumerable 等。
谢谢
我认为问题实际上是缺少返回值。据我了解,您可以通过约定或属性来识别 DomainOperations。您没有显示属性,因此 RIA 将按照惯例尝试匹配它。
例如,按照惯例,插入方法必须:
查询方法必须:
自定义域操作必须
编辑:见下面拉米 A 的评论。我相信这在当时是正确的,但我目前没有使用这项技术,所以我没有足够的时间来更新这个答案,只是注意到它可能是不正确的。
或者您可以使用 [Insert]、[Delete]、[Update]、[Query]、[Custom] 等属性。从我的文档中,所有属性所做的只是删除了对名称约定的要求——对我来说,他们并不清楚 [Query] 和 [Custom] 属性实现了什么。
除了 DomainOperations,您还可以定义 ServiceOperations(使用 [ServiceOperation] 属性)和 InvokeOperations。
这篇文章可能会有所帮助(尽管我认为它有点过时了)。