Entity Framework 5 and SQL Server CE: execute generated db schema - entity-framework

Project is using:
ASP.NET MVC4
Entity Framework 5
SQL Server CE
IDE: Visual Studio Express 2012
Issue:
Entity Framework (model-first) has you add your models in the .edmx then you right-click the .edmx to generate database schema. However in VS Express we're unable to right-click the .sqlce file contents to load the option to "Execute Ctrl+Shift+E" the way we can in Visual Studio.
Question:
How can I run the script that was generated by the Entity Framework?
Previous attempts:
So far I've tried to open the Compact database in SQL Server Management Studio but I return an error that SSMS can't load the compact db because it's not the correct type also from Database Explorer I've pasted the script into a NewQuery window and ran the script but threw errors as well.

I downloaded SQL Server Compact Toolbox and was able to run the script. Thanks and credit to ErikEJ.

Related

I am trying to use database first approach in Entity Framework .NET using Oracle database

i am using visual studio 2019 and have created an C# console application, added "Oracle.EntityFrameworkCore" and "Microsoft.EntityFrameworkCore.Tools" packages. Oracle database is already available in Server Explorer. Now i want create Models from the existing Oracle database tables using Scaffold-DbContext.
NOTE: I AM BOUND TO USE OLD 2.2.6 VERSION OF "Microsoft.EntityFrameworkCore.Tools" OTHERWISE IT GENERATES ERROR AS:
1. Package restore failed. Rolling back package changes.
2. Version conflict detected for Microsoft.EntityFrameworkCore.Relational.
Need to execute this sort of command:
Scaffold-DbContext "User Id=*****;Password=*****;Data Source=<*****>;" Oracle.EntityFrameworkCore -OutputDir Models

Visual Studio 2015 - Sql Server Project Database Diagram

Is there as way to create database diagram in Visual Studio as a Sql Server Project?
I know it is possible to do it in sql server management studio, but I am also wondering if it is possible to do in Visual studio.
As per MSDN (https://msdn.microsoft.com/en-us/library/y5a4ezk9.aspx) the Visual Database Designer was deprecated in Visual Studio 2013.
If you're using an older version of Visual Studio, note that support for the design tool within Visual Studio stops at SQL Server 2008 R2. (See "Important" box on top of page at https://msdn.microsoft.com/en-us/library/ms171976.aspx )
The short answer: no.
Actually there are two ways that i know In Visual Studio.
Add to project ADO.NET Entity Data model. It creates for you a .edmx file which contains a tables with relation.
More info MSDN. It also install Entity framework.
Open Server explorer > Connection to Database. Select Microsoft SQL Server, Server name=.; (or your PC name) and then choose your database schema.
You can check this video.
I hope it helps you.

using EntityFramework 6 with SQL Server Compact 4

I am developping an application using Entity-Framework and Sql Server Compact 4 in a Visual Studio 2013 project.
Here is the list of add-ons I installed via NuGet :
Microsoft.SqlServer.Compact 4.0.8876.1
EntityFramework 6.1.3
EntityFramework.SqlServerCompact 6.1.3
Then I want to add an ADO.NET Entity Data Model ("Code First from database").
I choose a sdf file that I already have created with SQL Server Compact Toolbox. The Wizard find it and generate a connection string
Data Source=E:\[...]\myDBtest.sdf
Then I click "Next >", the Wizard becomes gray, freezes a few seconds and then closes itself without showing the following step.
At the end, it did not generate anything into my project.
I tried to rebuilt the project before adding the ADO item.
And I even tried to reboot the computer ... with no more success.
Any suggestion or same experience ?
Of course you can use Db First with EF and SQL Server Compact. In order to avoid the error, install the latest Visual Studio Tools for EF (6.1.3) https://www.microsoft.com/en-us/download/details.aspx?id=40762

Integrating Entity Framework 6.0 with Postgres 9.3

I have a local database developed in Postgres 9.3. The Postgres server name on my computer is just "localhost". I would like to use the Entity Framework 6 Designer that is built into Visual Studio 13 to automatically generate a data model of EF classes and properties that correspond to the database tables and columns.
As described in various web articles, and using Nuget package manager, I added onto VS 13 these extensions or packages: EF 6, Npgsql, Npgsql Data Provider for EF 6, and Dotconnect express for Postgresql. Afterwards, in the VS 13 Server Explorer window, I was able to connect and see my Postgres tables and columns.
However, I cannot seem to get the EF Designer Wizard to automatically generate the .edmx file. I tried adding an ADO.net data object, selecting "EF Designer from Database" and alternatively, "Code First from Database." When I got to the next screen, I had to choose a Data Source. I tried both "MS SQL Server Database File" and alternatively, "Other." For the Data Provider, there was no other option than ".Net Data Provider for SQL."
In the next screen I tried to create a connection, using SQL server authentication, with user name and password, but I could never get VS 13 to connect or even display the Postgres server like it did in Server Explorer window. For the Server Name I used the same one as I used for the Server Explorer window, ie. localhost.mydatabasename.myschema. For the SQL User, I used the owner of the Postgres database, a Role I created, ie. mydatabasename_role.
When that faied, I tried going into MS SQL Management Studio 2014 to see if I could display the Postgres server there, using the same info used in the Server Explorer window, but I could not get SSMS to display the Postgres server there either. Is there a way to automatically generate the data model and .edmx file as I have been trying, using just VS 13 and SSMS 14? Or do I need to purchase the proprietary / licensed version of dotconnect for Postgres developed by Devart? Thank you in advance.
A Visual Studio plugin is currently being developed which supports the EF Designer Wizard.
You can find it here: https://github.com/npgsql/Npgsql/pull/213
After about a week of research and banging my head againts my desk, I FINALLY got my Npgsql MVC Entity Framework application to work... and work WITH the wizard. The steps are below....
1) Close Visual Studio, then download and install Npgsql PostgreSQL Integration from: https://marketplace.visualstudio.com/items?itemName=RojanskyS.NpgsqlPostgreSQLIntegration
2) Reboot your computer. (yes, it's needed, I promise)
3) Open visual studio and install the following NuGet packages, IN THE ORDER listed and the VERSION listed...
--> EntityFramework version 6.0.0, then clean and rebuild
--> Npgsql 3.1.0, then clean and rebuild
--> EntityFramework6.Npgsql 3.1.1, then clean and rebuild
NOTE: You may need to uninstall other Nuget packages if these will not install in the order and version listed. If so, just make note and add them back later. and yes, you will want to clean/rebuild between each one above.
4) Close all applications and restart your computer. (yes, it's needed, I promise)
5) After your computer restarts, open Visual Studio again and go to your solution. NOTE: I advise you add a new project for your database connection, but this is more a preference than anything.
6) Try using the Entity Framework Wizard again. You should see the Npgsql selections and it shouldn't just crash on you.

When SQL isn't explicitly installed what is the default data store Visual Studio 2012 and/or Entity Framework 5/6?

I have the situation below and can't figure out where everything is being saved.
I'm using a new installation of Visual Studio 2012 and didn't explicitly install any version of SQL. I created a Console project in VS and used NuGet to add references to the latest -Pre version of EF (6.0.1 at the time).
When I did the database operations I wanted (just some test stuff: create, add, query, migrations, etc.) everything worked. Shutdown the application, bring it back up and the data was persisted correctly. No problem so far.
When I went to look at the database I was surprised to find that I didn't have Management Studio installed. I also wasn't able to see any databases in the SQL Server Object Explorer in VS2012. I could see a "(localdb)\Projects" server but my database wasn't in it.
When I checked the generated connection string it was:
Data Source=.\SQLEXPRESS;Initial Catalog=TestProject.Context;Integrated Security=True;MultipleActiveResultSets=True
Using add server in the SQL Server Object Explorer I had to manually enter server names since none were found automatically. I tried localhost\SQLEXPRESS, (localdb)\SQLSERVER, .\SQLEXPRESS, and other similar variants, but those couldn't be found either.
Where is everything being saved?
Thanks.
If SqlExpress is not installed the default is (localdb)\v11.0 which is installed when you install VS2012 (or VS2013).