• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

C# - łączenie ze zdalną bazą danych, Entity Framework

0 głosów
557 wizyt
pytanie zadane 17 grudnia 2016 w C# i .NET przez pablocity Początkujący (330 p.)
edycja 17 grudnia 2016 przez pablocity
Witam

Programuję w C# od dłuższego czasu, stwierdziłem więc że kolejnym krokiem będzie nauka pisania aplikacji bazodanowych. Przekopując się przez różne fora dowiedziałem się, że używanie warstw połączeniowych czy bezpołączeniowych ADO.NET zostało wyparte przez Entity Framework.
Znalazłem dobry kurs dotyczący tego frameworka i w sumie wszystko było by ok, gdyby nie fakt, że wszędzie, w każdym tutorialu, poradniku na youtube czy tekstowym niezależnie czy dotyczy on EF albo poprzednich rozwiązań z ADO.NET, przykłady są wykonywane na lokalnych bazach, które są postawione na naszym komputerze - oczywiście to jest dobre rozwiązanie, gdyż do nauki nie potrzebujemy niczego więcej, jednak chciałbym się dowiedzieć jak, po napisaniu takiej aplikacji jestem w stanie użyć tego w realnym życiu.

Podsumowując, chciałbym połączyć się ze zdalną bazą na hostingu, np. ct8. Z tego co wiem to mało firm oferuje połączenia bezpośrednie z uwagi na  całkiem uzasadnione zagrożenie bezpieczeństwa, a o innych sposobach na użycie "prawdziwej" bazy nie mogłem znaleźć kompletnie nic, po za enigmatycznym schematem, z którego nie wiele wyniosłem, może po prostu szukałem złych haseł, gdyż mogę zapewnić że siedziałem nad tym trochę i niestety do niczego konstruktywnego nie doszedłem.
Jeśli chodzi o temat baz danych to jestem nieobeznany więc może w tym co napisałem jest jakiś błąd rzeczowy, ale myślę, że każdy powinien zrozumieć o co mi chodzi.

Z góry dziękuję za odpowiedź
Pozdrawiam

1 odpowiedź

0 głosów
odpowiedź 20 grudnia 2016 przez achilles147 Dyskutant (9,590 p.)

Cześć,

Nie ma dużej różnicy "w kodzie" pomiędzy łączeniem się z bazą lokalną a bazą zdalną. W twojej solucji masz pewnie gdzies plik konfiguracyjny. Zależnie od tego co to za rodzaj aplikacji : webowa/desktopowa ten plik będzie się nazywał pewnie app.config albo też web.config. Plik ten jest prostym xml'em w którym znajdziesz klucz, który powinien się nazywać "connectionString"

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <connectionStrings>
    <add name="NazwaModelu" connectionString="data source=NazwaSerweraSql\;initial catalog=NazwaBazy;user id=admin;password=admin;MultipleActiveResultSets=True;App=EntityFramework" providerName="System.Data.SqlClient"/>
  </connectionStrings>
</configuration>

W tym właśnie miejscu (pomiędzy znakami cudzysłowu "...") w polu connectionString wpisujesz adres do swojej bazy danych. Dla twojej aplikacji jest to więc bez znaczenia  czy jest to lokalna baza czy też baza znajdująca się na jakimś serwerze. Jeżeli wpiszesz w connectionString adres bazy znajdującej się na serwerze, to z tą właśnie bazą będzie się komunikowała twoja aplikacja. O tym jak poprawnie wpisać connectionString warto poczytać w internecie, ponieważ na różnych bazach robi się to inaczej.

komentarz 26 października 2018 przez Marcin Wawrzyniak Nowicjusz (100 p.)

... fajnie tylko:

- co tam należy wpisać jako name ?

- po edycji pliku web.config wg. podanego schematu, czy sama wartość connectionString nie powinna być widoczna globalnie w programie tak abym mógł napisać w pliku MainWindow.xaml.cs:

SqlConnection sqlconnection = new SqlConnection( connectionString );

wywala mi error, że sama nazwa connectionString nie istnieje w bierzącym kontekście indecision

???

Podobne pytania

0 głosów
1 odpowiedź 59 wizyt
0 głosów
0 odpowiedzi 47 wizyt
0 głosów
1 odpowiedź 94 wizyt
Porady nie od parady
Pytania na temat serwisu SPOJ należy zadawać z odpowiednią kategorią dotyczącą tej strony.SPOJ

66,384 zapytań

113,137 odpowiedzi

239,497 komentarzy

46,641 pasjonatów

Przeglądających: 297
Pasjonatów: 2 Gości: 295

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...