Changes between Version 7 and Version 8 of Documentation/DevelopmentCenter/Develop Services
- Timestamp:
- 08/20/10 05:17:08 (14 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Documentation/DevelopmentCenter/Develop Services
v7 v8 2 2 = How to ... Develop HeuristicLab Services = 3 3 4 This guide describes how to set up an environment for developing HeuristicLab services. Execute the following steps and you will be able to develop and test services and client applications locally on your machine. Please note that these steps are not sufficient for production use. If you want to set up a production system for hosting your services, some additional steps (especially concerning permissions and certificate creation) are necessary. However, if you develop your services and client applications locally as described below, they can be easily hosted on one of the HeuristicLab production servers (such as services.heuristiclab.comfor example).4 This guide describes how to set up an environment for developing HeuristicLab services. Execute the following steps and you will be able to develop and test services and client applications locally on your machine. Please note that these steps are not sufficient for production use. If you want to set up a production system for hosting your services, some additional steps (especially concerning permissions and certificate creation) are necessary. However, if you develop your services and client applications locally as described below, they can be easily hosted on one of the HeuristicLab production servers (such as `services.heuristiclab.com` for example). 5 5 6 6 == Software Requirements == … … 19 19 3. Optionally you can start the SQL Server Management Studio or create a new data connection in Visual Studio to check, if the database is really there. 20 20 21 This database is usually used by Heuri ticLab services for authentication and authorization. The two classes `System.Web.Security.SqlMembershipProvider` and `System.Web.Security.SqlRoleProvider` are used to access this database and to read and write users or roles. Usually there should be no need to access the database directly and you should not have to worry about its data model.21 This database is usually used by HeuristicLab services for authentication and authorization. The two classes `System.Web.Security.SqlMembershipProvider` and `System.Web.Security.SqlRoleProvider` are used to access this database and to read and write users or roles. Usually there should be no need to access the database directly and you should not have to worry about its data model. 22 22 23 23 === 2. Create a Self-Signed Certificate === … … 37 37 findprivatekey.exe My LocalMachine -n CN=localhost 38 38 }}} 39 3. Have a look at the output. It shows you the path and the filename of the private key and should look like :39 3. Have a look at the output. It shows you the path and the filename of the private key and should look like this: 40 40 {{{ 41 41 C:\...>findprivatekey.exe My LocalMachine -n CN=localhost … … 51 51 52 52 === 1. Update Client Service Reference === 53 As we have created a new server certificate, wehave to update the service reference in the client project:53 As you have created a new server certificate, you have to update the service reference in the client project: 54 54 1. Open the `HeuristicLabServicesDemo.sln` solution file. 55 55 2. Update the service reference of the project `HeuristicLab.DemoClient`. 56 3. Add the attribute `behaviorConfiguration="DefaultEndpointBehavior"` to the `endpoint` specification of the `client` section in the `app.config` file of the client project (please note that updating the service reference of the client overwrites the whole `client` section each time; therefore adding the behavior configuration has to be done everytime after updating the service reference). The `client` section should look like :56 3. Add the attribute `behaviorConfiguration="DefaultEndpointBehavior"` to the `endpoint` specification of the `client` section in the `app.config` file of the client project (please note that updating the service reference of the client overwrites the whole `client` section each time; therefore adding the behavior configuration has to be done everytime after updating the service reference). The `client` section should look like this: 57 57 {{{#!xml 58 58 <client>