2017-07-09 4 views
0

Ich baue eine Konsolenanwendung in C#, die Entity Framework verwendet, um auf einige Plottabellen in einer SQL Server-Datenbank zuzugreifen. Es schaut auf eine Tabelle namens ControlTable, sieht, welche Parzellen Bodenanalyse fehlen, geht asynchron zur Tabelle Plots und erhält die Koordinaten dieser Plots, macht dann einen API-Aufruf, gibt Bodendaten zurück und speichert sie in der PlotSoilChemistry-Tabelle.Entity Framework-Datenbank zuerst: Das Objekt kann nicht gefunden werden, weil es nicht existiert oder Sie keine Berechtigungen haben

Ich habe all diese Tabellen mit Entity Framework Database First hinzugefügt und kann sie in einem .edmx-Modell sehen.

Der Code in Ordnung, aktualisiert alles, und dann wirft einen SqlException:

System.Data.SqlClient.SqlException: 'Cannot find the object "[dbo.PlotSoilChemistry" because it does not exist or you do not have permissions.' 

Die Tabelle existiert, ich es in SSMS und in der .edmx Datei sehen kann. Ich habe versucht, das Modell zu löschen und erneut hinzuzufügen, und der Fehler verschwindet nicht. Vorschläge?

+2

Wenn das Objekt existiert, könnte es sein, dass Sie keine Berechtigungen haben, wie der Fehler vermuten lässt? Mit anderen Worten, hat der Benutzer, mit dem Sie eine Verbindung zu Ihrer Datenbank herstellen, die erforderlichen Berechtigungen für diese Tabelle? – oerkelens

Antwort

0

Das Problem gefunden-ich verwende "SET IDENTITY_INSERT [dbo]. [PlotSoilChemistry] ON" und hatte eine zusätzliche eckige Klammer arbeiten dort hinein. Oh!

Verwandte Themen