Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 4 gru 2024, o 20:34


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 
Autor Wiadomość
PostNapisane: 13 lis 2016, o 01:02 
Offline
Użytkownik

Dołączył(a): 16 maja 2012
Posty: 349
Lokalizacja: Legnica
Zbananowany użytkownik

Pomógł: 23

Witam.
W moich walkach z wdrażaniem wzorca MPV przyszedł czas na Dependenc Injection. No i natrafiłem na taki oto problem:
Składnia: [ Pobierz ] [ Ukryj ]
język csharp
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Test rzuca wyjątkiem:

Test Name: GetContext
Test FullName: DataTest.ContextTest.GetContext
Test Source: d:\dev\C#\Workspace\_sopd\DataTest\ContextTest.cs : line 35
Test Outcome: Failed
Test Duration: 0:00:00,2624654

Result Message:
Test method DataTest.ContextTest.GetContext threw exception:
System.InvalidOperationException: The operation cannot be completed because the DbContext has been disposed.
Result StackTrace:
w System.Data.Entity.Internal.LazyInternalContext.InitializeContext()
w System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType(Type entityType)
w System.Data.Entity.Internal.Linq.InternalSet`1.Initialize()
w System.Data.Entity.Internal.Linq.InternalSet`1.get_InternalContext()
w System.Data.Entity.Infrastructure.DbQuery`1.System.Linq.IQueryable.get_Provider()
w System.Linq.Queryable.Select[TSource,TResult](IQueryable`1 source, Expression`1 selector)
w DataTest.ContextTest.GetContext() w d:\dev\C#\Workspace\_sopd\DataTest\ContextTest.cs:wiersz 37

Przypuszczam że problem siedzi w konfiguracji wpisu w kontenerze ale niestety googlowe podpowiedzi nic nie dają.
Pomoże ktoś?

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 lis 2016, o 11:59 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 12 maja 2014
Posty: 1089
Pomógł: 34

uzywajac tego kodu

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


using pozbywa sie wszystkiego co znajdowalo sie w tym bloku wiec niestety nie bedziesz mial dostepu do service

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 lis 2016, o 16:36 
Offline
Użytkownik

Dołączył(a): 16 maja 2012
Posty: 349
Lokalizacja: Legnica
Zbananowany użytkownik

Pomógł: 23

Przepisywanie kodu z tutoriali o 2:00 w nocy nie sprzyja krytycznej analizie. ;-)
Dzięki. Zmieniłem na :
Składnia: [ Pobierz ] [ Ukryj ]
język csharp
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

I oczywiście zadziałało. Pytanie dodatkowe. Gdzie w programie desktopowym (WinForms) najlepiej definiować kontener DI i jak powinien być zdefiniowany jeżeli chodzi o modyfikatory dostępu. Chodzi mi o zakres widoczności i tryby dostępu. Gdzieś czytałem, że są wzorce projektowe, wg których warstwa BL w ogóle nie powinna mieć świadomości istnienia kontenera DI. Nie mogę na to powtórnie trafić.

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 lis 2016, o 23:47 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 12 maja 2014
Posty: 1089
Pomógł: 34

Temat bardzo fajny - tak na szybko mozesz rzucic okiem tutaj http://codereview.stackexchange.com/a/56207/70739 a gdybys trafil na artykul to wrzuc go jeszcze dla potomnych ;)

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO