我慢慢地钻研Silverlight,经过一段时间的尝试,我终于能够将自己的自定义对象从我的Web返回到我的Silverlight客户端,使用启用了SiverLight的WCF服务。
现在,我对域服务和WCF服务之间的区别有点茫然。
我学习了一些教程,其中域服务绑定到数据上下文,然后绑定到siliverlight控件。太好了:)然而,当我撞到一块石头的时候,我正试图归还任何可以查询的东西;比如字符串、我自己的简单类型等等。
我发现了一些教程,比如
this
显示使用[ServiceContract]批注标记函数,并在简单类中具有[key]。这不起作用,[ServiceContract]无法解决,我后来找到了一个使用[Invoke]的指南。然后我碰到了无法加载函数的问题,得到了一个结果,我基本上是到这里来的。
[Invoke]
public string HelloWorld(string name)
{
return string.Format("Hello {0}.", name);
}
var helloWorld = new HelloWorldDomainContext();
//helloWorld.HelloWorldCompleted += new EventHandler<InvokeEventArgs<string>>(HelloWorldHelloWorldCompleted);
//helloWorld.HelloWorld("Mark Monster");
总之,我发现了启用Silverlight的WCF服务,并且能够返回我自己的自定义对象并调用这个fine。
tl;dr-域服务是否仅在绑定到Silverlight控件时使用?IE是一种直接的单向绑定,在需要时调用,我在服务器上执行所有与LINQ相关的排序/筛选/选择?
假设我想返回一个xmlstring,然后使用一个wcf服务?在我的应用程序中混合使用WCF服务和域服务是否正确?
抱歉,如果上面有点混乱!只是尝试从ASP.NET/Flex中解决这些问题
非常感谢。