开发者

deploying services to use SQL server in silverlight

I've made a service for my silverlight 4 database (SQL) affairs (VS2010, C# ASP.NET web app), now I'm writing my SQL functions in this service, how can I use this functions? I've read some articles about deploying services but I think my case should not be much complicated, I have a big ASP.net web app with several web pages (I have a server running on winserver2008), it works great, also I have a SL app, what kind of files should I upload for using service? do I need an asmx? how can I create it? should I change any开发者_StackOverflow社区thing in web.config?

what is the easiest way to use my service for communicating between SQL and SL? thanks


WCF RIA Services is the way to go. You do not want to bother with old-school ASMX web-services.

You will use an EF model and a DomainContext on the server to handle all database access via CRUD methods (Create, Read, Update & Delete).

On the client you will use the generated Domain Service client to access data.

Notes from my previous RIA post:

My suggestion is to always create RIA Service libraries instead of adding directly to a Silverlight application. Then you can link the Client-side library to any number of Silverlight applications, then link the .Web part of the RIA library to your website to provide the WCF service. Again the key is to migrate the config settings.

It will probably make a lot more sense if you create a new RIA services library project, add your EDM etc, then link the halves to a separate Silverlight app and your new ASP.net website.

Step-by-step:

  1. Create RIA Services Library project by selecting Add New Project. Select Silverlight on the left. Select WCF RIA Services Class Library on the right. I will assume it is called the default name RIAServicesLibrary1 for this example. It will create a Silverlight client library called RIAServicesLibrary1 and a standard .Net library called RIAServicesLibrary1.Web for use by the Web server.
  2. Add your EDMX to the RiaServices.web project. Select Add new item. Select Data on the left. Select ADO.Net Entity Data Model on the right. I will assume it is called the default Model1.edmx for this example. Connect it to your database tables etc.
  3. Build your project so that the next step will find your data model.
  4. Create a Domain Service referencing your EDMX models in your RiaServices.web project. Select Add new item. Select Web on the left. Select Domain Service Class on the right. I will assume it is called DomainService1.cs for this example. Choose your data items from the Add New Domain Service Class popup window by ticking the checkboxes. A set of RIA services objects and methods will be created for each item you select.
  5. Add a reference to the client Ria services library project (RIAServicesLibrary1) to your Silverlight application.
  6. Add a reference to the web RIA services library project (RIAServicesLibrary1.Web) to your hosting web application (e.g. you ASP.Net website).
  7. Copy/merge the various sections in the RIAServicesLibrary1.Web/app.config file into your <webapplication>/web.config file. This will include any connection strings and the module sections.
  8. Build the project again so that the Data Source window will see your new Domain Context data sources.
  9. Use the RIAServicesLibrary1 client object (called DomainService1 in this example) directly from your Silverlight code like this:

    DomainService1 client = new DomainService1();

or use the Data Sources window to drag/drop a new grid etc onto a page.

If the Data Sources window is not visible select the "Data" menu then the "Show Data Sources" option.

For more information try this Microsoft link: Using WCF RIA Services

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜