The specified deps.json [D:\***\MagazynSkladowania.deps.json] does not exist

0

Szanowni Państwo

Za pomocą
entityframeworktutorial.net
i komendy:
Scaffold-DbContext "Server=.\SQLExpress;Database=SkladPalet;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models
Chcę stworzyć modele na podstawie dwóch tablic z mojej bazy danych.

Na początku wyrzucało błąd w "Package Manager Console", że nie wie co to za komenda.
To zgodnie z tą instrukcją:
StackOverflow
zainstalowałem potrzebne pakiety:
Install-Package Microsoft.EntityFrameworkCore.Tools

Następnie zmieniłem nazwę folderu i mojego projektu w celu usunięcia polskich znaków (Tak na przyszłość, na wszelki wypadek). Następnie nie mógł znaleźć projektu, więc edytowałem plik projektu:
MagazynSkladowania.sln
i tam nadpisałem nazwę folderu na aktualną (bez polskich znaków) i projekt odpala się prawidłowo.

Następnie jeszcze raz wywołałem instrukcję
Scaffold-DbContext "Server=.\SQLExpress;Database=SkladPalet;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models
i wyrzuca mi błąd:
The specified deps.json [D:$$$\MagazynSkladowania.deps.json] does not exist

Szukałem w internecie, wyczyściłem "catche" paczek NuGet'a, zaupdatowałem je, zrobiłem "Restore NuGet Packages", ale niestety nic nie pomogło.

Wie ktoś może co to za plik i jak naprawić ten problem?

EDIT:
foldery bin i obj i .vs też usuwałem

1

No to na początek, proste pytanie. Czy masz w folderze, w którym wywołujesz tę komendę plik MagazynSkladowania.deps.json?

0
AdamWox napisał(a):

No to na początek, proste pytanie. Czy masz w folderze, w którym wywołujesz tę komendę plik MagazynSkladowania.deps.json?

Nie, nie mam i chyba nawet nigdy nie miałem.

1

No to odpal projekt. Wejdź do bin/debug/<cokolwiek_tutaj_masz> i sprawdź czy istnieje, bo powinien. I uruchom komendę w miejscu, w którym jest ten plik. Domyślam się, że uruchamiasz ją w głównym folderze, tam gdzie jest plik z solucją .sln, a tam tego pliku nie ma.

0
AdamWox napisał(a):

No to odpal projekt. Wejdź do bin/debug/<cokolwiek_tutaj_masz> i sprawdź czy istnieje, bo powinien. I uruchom komendę w miejscu, w którym jest ten plik. Domyślam się, że uruchamiasz ją w głównym folderze, tam gdzie jest plik z solucją .sln, a tam tego pliku nie ma.

wszedłem za pomocą komendy cd do folderu "\bin\Debug\netcoreapp3.1" gdzie owy plik się znajduje, ale pojawiły się inne błędy, więc to chyba nie tędy droga. Jeśli chodzi o parametry komendy "Scaffold-DbContext" to mamy ich tylko trochę:
MSDN
i wszystkie dotyczą danych wyjściowych. Jakoś inaczej trzeba to zrobić?

1

To jest trochę zgadywanie i niepotrzebne linkowanie czegoś co już zostało napisane.
Scaffolding Error ASP.NET Core with Entity Framework still persists
The specified deps.json does not exist #7077

0
AdamWox napisał(a):

To jest trochę zgadywanie i niepotrzebne linkowanie czegoś co już zostało napisane.

Scaffolding Error ASP.NET Core with Entity Framework still persists
The specified deps.json does not exist #7077

Próbowałem rozwiązania z pierwszego linku. Nic to nie dało, bo dalej szuka pliku w głównym folderze projektu.
Próbowałem rozwiązania z drugiego linku, ale zmiana folderu OutputDir nic nie dało.
Próbowałem zrobić git revert i cofnąć się to poprzednich wersji projektu. Też nic to nie dało.

0

Zrobiłem nowy projekt w ASP.NET Core Web Application. Dałem "place solution in same folder". Dodałem do niego paczki Nuget. Połączyłem z lokalnym serwerem SQL i Bazą Danych stworzoną za pomocą Microsoft SQL Manager.

Wywołałem funkcję "Scaffold DbContex" i jest to samo. To musi być coś głębiej nie tak, niewłaściwa wersja paczki nuget albo frameworka Core...

0

Wygląda na to, że to jakiś problem z frameworkiem i wciąż jest nierozwiązany:
link 1
link 2
link 3
link 4
link 5
link 6

Ostatecznie korzystam z wersji:
screenshot-20210329184220.png

Wyświetla mi możliwy update paczek Nugetowych, ale nie mogę tego update'u przeprowadzić ze względu na wersję projektu:
screenshot-20210329184447.png

Wersja paczek od EF Core którą mam aktualnie zainstalowaną:
screenshot-20210329184533.png

Nawet nie chciałbym robić update'a. Ponieważ teraz komenda Scaffold-dbcontex nie wyrzuca błędu braku pliku .deps.json gdy wywołuję:
Scaffold-DbContext "Data Source=INTERCEPTOR;initial catalog=PalleteWarehouse;Integrated Security=True;ConnectRetryCount=0" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -DataAnnotations

Natomiast teraz mam problem z credentials:
screenshot-20210329184735.png

Dodam, że taki login na serwerze istnieje. I jakiś wymagany maping mam, bo sprawdziłem w SQL Server Manager Studio:
screenshot-20210329184848.png

Wie ktoś może jak naprawić logowanie by korzystać z windows authentication?

0

No i wszystko jasne 😏 czy ty przypadkiem nie próbujesz stworzyć aplikacji w .NET Framework korzystając z EF Core? To są dwie różne technologie. Zrób projekt jako .NET Core i wtedy instaluj `Microsoft.EntityFrameworkCore. Jeśli ma być twój projekt w .NET Framework to ściągnij z nugeta EntityFramework

0

No właśnie nie. Tworze nowy projekt w Core Web app:
screenshot-20210329203401.png

Dodaje paczki:
screenshot-20210329203426.png

I jest ten błąd:
screenshot-20210329203520.png

2
AdamWox napisał(a):

No i wszystko jasne 😏 czy ty przypadkiem nie próbujesz stworzyć aplikacji w .NET Framework korzystając z EF Core? To są dwie różne technologie. Zrób projekt jako .NET Core i wtedy instaluj `Microsoft.EntityFrameworkCore. Jeśli ma być twój projekt w .NET Framework to ściągnij z nugeta EntityFramework

Nieprawda. EF Core to biblioteka net standard i w wersji do 3.x (chyba) może być z powodzeniem używana w pełnym frameworku

0

Przy użyciu komendy:
Scaffold-DbContext "Data Source=INTERCEPTOR;initial catalog=PalleteWarehouse;Integrated Security=True;ConnectRetryCount=0" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -DataAnnotations

Wyrzuca mi błąd:
screenshot-20210401165432.png

Jednak gdy łączę się z inną bazą danych to działa. Czyli coś musi być nie tak z samą bazą danych "PalleteWarehouse" na serwerze? Próbowałem tego rozwiązania, ale nie pomogło:
link

Takie mam ustawienia Bazy Danych i user mappingu:
screenshot-20210401204531.png

0

O dziwo na innej bazie danych na tym serwerze komenda zadziałała poprawnie. Próbowałem rozwiązań z tego linku:
Link 1
i z tego
Link 2

Reinstalowałem Serwer SQL i stworzyłem nową bazę danych i przeszło. Tak naprawdę reinstalacja była chyba niepotrzebnym krokiem, bo coś nie tak było z moją bazą danych. Mogłem ją usunąć i stworzyć na nowo. Temat zamykam.

1 użytkowników online, w tym zalogowanych: 0, gości: 1