How to add foreign key relationship in Entity Framework?

Entity FrameworkVisual Studio

Entity Framework Problem Overview


Click here to see how to do it while using a code first approach. Below the original database first approach question and answer.

I am using Entity Designer to create a database first model. Now I want to create a foreign key relationship between ProductId and ProductId (see below). I looked at the "add new association" but I cannot connect the two items. Can someone more experienced tell me how to accomplish this?

foreign key

Entity Framework Solutions


Solution 1 - Entity Framework

According to Relationships/Associations with the EF Designer, the steps to create a foreign key association are:

> 1. Right-click an empty area of the design surface, point to Add New, and select Association…. > 2. Fill in the settings for the association in the Add Association dialog.

...being sure to check the Add foreign key properties to the Entity checkbox when filling in the relationship details.

See also: Relationships, Navigation Properties, and Foreign Keys

Solution 2 - Entity Framework

If you are using the database first approach, it's better to create the foreign key on the database and update the model. Of course, this is true if you can modify the database; if not, you're stuck with the option of creating the referential constraint on the model.

Solution 3 - Entity Framework

To answer the bonus question:

If you have SQL Management Studio installed then you can very easily use the Database Migration wizard (right click on a database, "Tasks", "Deploy Database to SQL Azure") and from there fill the textboxes with the required information that you get from Azure.

Also, make sure to add your IP to the ignore list in Azure or else you won't be able to upload. This can be done in the Azure webportal.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionErwin RooijakkersView Question on Stackoverflow
Solution 1 - Entity FrameworkMikhail TimofeevView Answer on Stackoverflow
Solution 2 - Entity FrameworkCarles CompanyView Answer on Stackoverflow
Solution 3 - Entity Frameworkneo112View Answer on Stackoverflow