Mit dem Release vom .net Framework 3.5 SP1 (böse Zungen sagen auch .net 3.6 dazu) haben wir eine relativ einfache Möglichkeit bekommen, um Daten über eine HTTP Schnittstelle bereitzustellen.
Was müssen wir dafür tun?
1) Erstellen einer neuen ASP.net Web Application
2) Ein ADO.net Entity Data Model erstellen (*.edmx)
3) Ein ADO.net Data Service hinzufügen und adaptieren.
Imports System.Data.Services
Imports System.Linq
Imports System.ServiceModel.Web
Public Class Northwind
' TODO: replace [[class name]] with your data class name
Inherits DataService(Of NorthwindEntities)
' This method is called only once to initialize service-wide policies.
Public Shared Sub InitializeService(ByVal config As IDataServiceConfiguration)
' TODO: set rules to indicate which entity sets and service operations are visible, updatable, etc.
' Examples:
' config.SetEntitySetAccessRule("MyEntityset", EntitySetRights.AllRead)
' config.SetServiceOperationAccessRule("MyServiceOperation", ServiceOperationRights.All)
config.SetEntitySetAccessRule("*", EntitySetRights.All)
End Sub
End Class
Achtung das ADO.net DataService muss hierbei vom Context abgeleitet werden.
4) Testen des Services. –> F5 sollte hierfür reichen.
Im Firefox wirds sofort klappen.
Im Internet-Explorer (zumindest IE 8 Beta 2) vermutlich nicht.
http://127.0.0.1:49338/Northwind.svc/ <- Im IE muss nämlich der letzte Schrägstrich noch manuell dran gemacht werden damits läuft.
Im einem zukünftigen Eintrag wollen wir das soeben erstellte Service noch konsumieren.
Fragen dazu? Kommentar posten ;)