TatiOverflow
TatiOverflow

Reputation: 1171

Changing Namespaces in Entity Framework

I am trying to change the Namespace used by Entity Framework Generator of classes.

When I click the designer of my Entity, Model.edmx, I can see somewhere where I can change the namespace:

Namespace

under ConceptualEntityModel properties. Changed that namespace, but nothing happened. Didn't work. So, I read some help from this link:

http://weblogs.asp.net/zeeshanhirani/struggling-through-namespace-in-entity-framework

says that I have to change the property: Custom Tool Namespace

That's nice, when I click property of .edmx in console application, there property is there. But when I am using the same thing in a Web Application, the property is not there. There is only a property file called Web File Properties that simply has 3 properties:

What am I missing here?

Upvotes: 45

Views: 19652

Answers (4)

George Fabish
George Fabish

Reputation: 439

My issue was that I had to rename a solution and the default namespace and assembly name hadn't gotten changed to the new name. After making sure your namespace is correct in the EDMX designer, right click on your project to open properties and update the default namespace and assembly name and we were good.

Upvotes: 0

Taras Kozubski
Taras Kozubski

Reputation: 1874

rainerh is right:

I tried to set *.edmx Custom Tool Namespace property - this did not help.
I tried to set *.Context.tt property - this did not help too.
But when I set Custom Tool Namespace property of *.tt file (right-click on the file -> Properties) - namespace was set automatically for all the classes genereated before.

Upvotes: 70

Ray Lionfang
Ray Lionfang

Reputation: 697

In my case, I just simply created a folder within the project, moved the .edmx file to the folder I created(using the solution explorer), and everything just automatically changed namespaces.

Upvotes: 4

Scotty
Scotty

Reputation: 1137

Open your edmx file first then press F4 or click on the properties window. Under the Schema section, there is a property called Namespace which you can modify.

Upvotes: 5

Related Questions