我已经为我的silverlight 4数据库(SQL)事务(VS2010,C#ASP.NET Web应用程序)提供了服务,现在我在这个服务中编写我的SQL函数,我该如何使用这个函数?我已经阅读了一些关于部署服务的文章,但我认为我的情况不应该太复杂,我有一个带有几个网页的大型ASP.net网络应用程序(我在winserver2008上运行一个服务器),它运行良好,我也有一个SL应用程序,我应该上传什么样的文件才能使用服务?我需要一个asmx吗?我怎么创建它?我应该在web.config中更改任何内容吗?
使用我的服务在SQL和SL之间进行通信的最简单方法是什么?感谢
答案 0 :(得分:2)
WCF RIA服务是最佳选择。你不想打扰老式的ASMX网络服务。
您将在服务器上使用EF模型和DomainContext来处理通过CRUD方法(创建,读取,更新和删除)的所有数据库访问。
在客户端上,您将使用生成的域服务客户端访问数据。
我的建议是始终创建RIA服务库,而不是直接添加到Silverlight应用程序。然后,您可以将客户端库链接到任意数量的Silverlight应用程序,然后将RIA库的.Web部分链接到您的网站以提供WCF服务。关键是要迁移配置设置。
如果你创建一个新的RIA服务库项目,添加你的EDM等,然后将这两半链接到一个单独的Silverlight应用程序和你的新ASP.net网站,可能会更有意义。
RiaServices.web
项目中。选择添加新项。选择左侧的数据。选择右侧的 ADO.Net实体数据模型。我将假设它被称为此示例的默认Model1.edmx
。将它连接到数据库表等。RiaServices.web
项目中创建引用EDMX模型的域名服务。选择添加新项。选择左侧的 Web 。选择右侧的域服务类。我将假设它被称为DomainService1.cs
这个例子。通过勾选复选框,从添加新域服务类弹出窗口中选择数据项。将为您选择的每个项目创建一组RIA服务对象和方法。直接从您的Silverlight代码中使用RIAServicesLibrary1
客户端对象(在此示例中称为DomainService1),如下所示:
DomainService1 client = new DomainService1();
或使用Data Sources
窗口将新网格等拖放到页面上。
如果Data Sources
窗口不可见,请选择“数据”菜单,然后选择“显示数据源”选项。
有关详细信息,请尝试以下Microsoft链接:Using WCF RIA Services