LightSwitch jako źródła danych
Korzystając ze LightSwitch do tworzenia aplikacji, można go jako warstwa środkowa dostarczać dane do innych aplikacji.Po opublikowaniu danych aplikacji z LightSwitch na serwerze sieci web lub Windows Azure danych jest udostępniany jako usługa otwarty protokół danych (OData).OData zapewnia standard przekazywania danych usług sieci Web.Wiele przedsiębiorstw dzisiaj użyć OData do wymiany danych między systemami i partnerami, oprócz zapewnienia dostępu do ich magazyny danych.Ponieważ OData jest standardowym protokołem, inne aplikacje klienckie na niemal wszystkich platform lub urządzenia dostęp do danych, Utwórz lub za pośrednictwem LightSwitch.
Tworzenie usług OData
Usługa OData jest tworzona automatycznie dla każdego źródła danych w aplikacji, z oddzielnym końcowego dla każdego źródła danych.Funkcja ta dotyczy nie tylko do tabel, które można zdefiniować w wewnętrznej bazie danych, ale również do dowolnego źródła danych dołączonych bazy danych SQL Server, listy programu SharePoint lub nawet innej usługi OData.
Wszelkie business logic i uprawnienia użytkowników zdefiniowane dla jednostki zostanie wykonany, gdy punkt końcowy jest dostępny, niezależnie od tego, jaki klient uzyskuje dostęp do usług.Zamiast pisania logiki biznesowej i definiowania uprawnień użytkownika dla każdej aplikacji klienta, można użyć LightSwitch warstwa środkowa jako miejsce scentralizować kodu.
Dostęp do usług LightSwitch OData
Podczas wdrażania LightSwitch aplikacji w konfiguracji trójwarstwowej (warstwa środkowa w Internet Information Services lub Windows Azure hostingu) punktów końcowych usługi są narażone.Nazwy usług odpowiadają nazwy źródeł danych.Na przykład, aplikacja przykładowa w Instruktaż: Tworzenie aplikacji kliniki wizji udostępnia dwoma punktami końcowymi usługi, ponieważ ma dwóch źródeł danych: ApplicationData bazy danych, która jest wewnętrzna, i bazy danych PrescriptionContoso SQL, który jest dołączony.Jeżeli wdrożono aplikacji do witryny sieci Web o nazwie "www.contoso.com", byłoby punktami końcowymi usługi https://www.contoso.com/ApplicationData.svc i https://www.contoso.com/PrescriptionContoso.svc.
W ramach każdej usługi można przejść do wszystkich zestawów podmiot modelowane w projektancie danych.OData definiuje zestaw operacji kwerend, które można wykonać na danych przy użyciu zestawu konwencje URI.Można wysyłać kwerendy do usługi z HTTP-GET żądanie i usługa będzie zwracać paszy z wynikami w odpowiedzi.Na przykład można Kwerenda URI usługi PrescriptionContoso kliniki wizji https://www.contoso.com/PrescriptionContoso.svc/Products zwraca zestaw wyników zawierający wszystkie rekordy z jednostki produktów.
[!UWAGA]
Aby wyświetlić paszowe nieprzetworzone dane w programie Internet Explorer, należy wyłączyć Włącz widok do odczytywania paszy pole wyboru.
OData kwerendy jest uwzględniana wielkość liter; Jeśli określisz produktów zamiast produktów, kwerenda będzie zwracać żadnych wyników.Możesz ulepszyć OData kwerend na kilka sposobów.Na przykład, można użyć https://www.contoso.com/PrescriptionContoso.svc/Products(1) kwerendę, aby zwrócić produkt, który ma IDProduktu 1.Aby zwrócić wszystkie produkty w kategorii opieki obiektywu, można użyć https://www.contoso.com/PrescriptionContoso.svc/Products?Category='Lens opieki " kwerendy.Wszelkie reguły biznesowe lub uprawnienia zdefiniowane w LightSwitch nadal stosować.Dlatego użytkownicy, którzy uruchomić poprzednich kwerend muszą uprawnienia do wyświetlania produktów.
Podobnie protokół OData definiuje standardowy sposób nawigacyjnego relacje za pośrednictwem właściwości nawigacji.Na przykład, można użyć https://www.contoso.com/PrescriptionContoso/Products (1) / ProductRebates kwerendę, aby znaleźć rabatów dla produktu, który ma IDProduktu 1 w tabeli pokrewnej ProductRebates.OData obsługuje inne operacje kwerendy, takie jak OrderBy, Top, Skip, i Sort.Aby uzyskać więcej informacji, zobacz OData: URI konwencje.
Zabezpieczanie usługi LightSwitch OData
W większości przypadków należy do formantu, który można uzyskać dostęp i aktualizować dane usługi OData.Można kontrolować dostęp dla LightSwitch aplikacji przy użyciu jej ustawień.LightSwitchobsługuje trzy ustawienia uwierzytelniania: Brak, formularze i systemu Windows.
Jeśli wybierzesz uwierzytelniania formularzy, LightSwitch umożliwia dwóch trybów uwierzytelniania.Tryb jednego jest protokołu niestandardowego, że używa pole dialogowe logowania i że używa niestandardowych API dla usługi sieci web do przekazywania poświadczeń i uzyskać plik cookie uwierzytelniania formularzy.Jeśli żądanie danych nie ma plik cookie uwierzytelniania formularzy prawidłową LightSwitch odpowiada challenge podstawowe HTTP.Ta odpowiedź umożliwia klientom, które nie zostały opracowane w LightSwitch do przekazywania poświadczeń za pośrednictwem standardowego protokołu HTTP.Jeżeli wybrano uwierzytelnianie systemu Windows LightSwitch wymaga poświadczeń przez uwierzytelnionego użytkownika systemu Windows.Aby uzyskać więcej informacji, zobacz Uwierzytelnianie i autoryzacja w programie LightSwitch.
Niezależnie od mechanizmu uwierzytelniania używane, należy rozważyć, przy użyciu zabezpieczeń na poziomie transportu HTTPS do bezpiecznych poświadczeń, tokeny i danych.Bez HTTPS, formularze, podstawowe poświadczenia i uwierzytelnianie formularzy tokeny są transportowane jako zwykły tekst.Uwierzytelnianie systemu Windows jest bardziej bezpieczne, ale bez HTTPS, wszelkich danych, przesyłanych między klientem a serwerem będzie nadal zwykły tekst.Aby złagodzić, LightSwitch ma ustawienie HTTPS w Kreatorze publikacji powoduje, że aplikacja wymaga bezpiecznego połączenia.To ustawienie jest włączone, zostanie przekierowany żądania z HTTP do HTTPS, ale nadal musi otrzymać i skonfigurować certyfikatu HTTPS w serwisie WWW.Aby uzyskać więcej informacji, zobacz Zagadnienia zabezpieczeń dotyczące LightSwitch.
Oprócz zabezpieczanie dostępu do aplikacji, można również używać zabezpieczeń opartych na rolach w LightSwitch do ograniczania dostępu do konkretnych obiektów.Na przykład może zezwolić wszystkim uwierzytelnionym użytkownikom wyświetlić dane w porządku, ale tylko kierownicy mogą być wyświetlane dane listy płac.Aby uzyskać więcej informacji, zobacz Uwierzytelnianie i autoryzacja w programie LightSwitch.
LightSwitchnie zapewnia bezpośredni mechanizm ukrywania lub wykluczanie końcowy OData zestawy podmiot lub właściwości obiektu.Niezależnie od można połączyć w warstwie danych będą widoczne dla punktu końcowego usługi.Dostęp do tych zasobów można kontrolować za pomocą metody kontroli dostępu wbudowanych w kodzie usługi danych.Aby uzyskać więcej informacji, zobacz Wykonywanie zadań związanych z danych przy użyciu kodu.
Kod, który uniemożliwia użytkownikom aktualizowania lub usuwania danych w jednostce produktów można znaleźć w poniższym przykładzie:
Namespace LightSwitchApplication
Public Class PrescriptionContosoService
Private Sub Product_CanUpdate(ByRef result As Boolean)
result = False
End Sub
Private Sub Product_CanDelete(ByRef result As Boolean)
result = False
End Sub
Private Sub Product_CanInsert(ByRef result As Boolean)
result = False
End Sub
End Class
End Namespace
namespace LightSwitchApplication
{
public partial class PrescriptionContosoService
{
partial void Product_CanUpdate(ref bool result)
{
result = false;
}
partial void Product_CanDelete(ref bool result)
{
result = false;
}
partial void Product_CanInsert(ref bool result)
{
result = false;
}
}
}
LightSwitchUmożliwia filtrowanie na poziomie wiersza z EntitySet_Filter metody.Za pomocą tej metody, można powrócić mniejszy zestaw rekordów z jednostki.Poniższy przykład zwraca tylko rekordy klientów, które mają TerritoryID 5:
Private Sub Customers_Filter(ByRef filter As Expression(Of Func(Of Customer, Boolean)))
filter = Function(e) e.TerritoryId = 5
End Sub
private void Customers_Filter(ref Expression<Func<Customer, bool>> filter)
{
filter = e => e.TerritoryId == 5;
}
Używające usług LightSwitch OData
Dowolnej aplikacji obsługującej OData na dowolnej platformie mogą zużywać źródła OData LightSwitch.Zależy od metody do łączenia się OData paszy, ale zazwyczaj podawane jedynie LightSwitch punktu końcowego usługi.
LightSwitch Dokumentacja zawiera kilka przykładów aplikacji, które zajmują się OData.
Informacje na temat zużywają z innego OData LightSwitch aplikacji, zobacz Instruktaż: Udostępnianie i używające usługi OData w LightSwitch.
Informacje na temat zużywają OData z Windows Store aplikacji, zobacz Wskazówki: korzystanie z danych LightSwitch w aplikacji sklepu Windows Store.
Informacje na temat zużywają OData z Microsoft Excel, zobacz Instruktaż: Używające usług LightSwitch w programie Excel PowerPivot.
Zobacz też
Zadania
Uwierzytelnianie i autoryzacja w programie LightSwitch
Instruktaż: Udostępnianie i używające usługi OData w LightSwitch
Wskazówki: korzystanie z danych LightSwitch w aplikacji sklepu Windows Store
Instruktaż: Używające usług LightSwitch w programie Excel PowerPivot
Koncepcje
Ujawnienia danych aplikacji LightSwitch