Mit Entity Framework erstellte Library in ASP.NET MVC referenzieren?

22/08/2009 - 10:18 von Michael Justin | Report spam
Hallo,

mit ASP.NET MVC und EF klappt die Webseitenerstellung schon ganz gut.
Nun würde ich gerne erst ein eigenes VS Projekt erstellen, das eine
Geschàftslogik mit EF-Unterstützung enthàlt.

Kann man das externe Projekt und dessen EF-Datenmodell dann einfach in
einem ASP.NET MVC Projekt einbinden, so dass das Datenmodell unter dem
"Models" Ordner erscheint, und daher dort genauso benutzt werden kann
als wàre es innerhalb des MVC Projekts angelegt worden?

Ich hab's noch nicht versucht, ein einfaches Ja oder Nein wàre daher
auch schon eine hilfreiche Antwort :)

Viele Grüße,
Michael Justin
SCJP, SCJA
betasoft - Software for Delphi™ and for the Java™ platform
http://www.mikejustin.com - http://www.betabeans.de
 

Lesen sie die antworten

#1 Frank Dzaebel
22/08/2009 - 17:15 | Warnen spam
Hallo Michael,

mit ASP.NET MVC und EF klappt die Webseitenerstellung schon ganz gut.
Nun würde ich gerne erst ein eigenes VS Projekt erstellen, das eine
Geschàftslogik mit EF-Unterstützung enthàlt.
Kann man das externe Projekt und dessen EF-Datenmodell dann einfach in
einem ASP.NET MVC Projekt einbinden, so dass das Datenmodell unter dem
"Models" Ordner erscheint, und daher dort genauso benutzt werden kann
als wàre es innerhalb des MVC Projekts angelegt worden?



Die Klassen, die Du über das EF in der Klassenbibliothek
erzeugt hast, kannst Du natürlich ohne weiteres einfach über
den Verweis im anderen Projekt benutzen. Die entsprechenden
EF-Klassen werden ja standard-màssig in die Ausgabeassembly
mit eingebettet.
Nur, bzgl. Änderungen in diesem Modell sollte man sich erstmal
klarmachen, was das heisst, bzw. was wirklich gewollt ist.

Wenn Du die 'Model.edmx' und 'Model.Designer.cs' nun
àndern könntest, wo würdest Du es am liebsten
persistiert sehen. (Über 'partial' anpassen ginge ja eh)

a) Im zweiten Projekt, oder
b) in der Original-Klassenbibliothek?

Wenn a) dann gàbe es eine Diskrepanz und
Unstimmigkeit in der Gesamt-Sicht. Wenn b)
wàre die Gesamtsicht ok, nur müsstest Du eben
die Änderungen im Original-Projekt durchführen.
Angenommen du könntest die Änderungen im
Original-Projekt sogar in Deinem zweiten Projekt
durchführen, so müsste zumindest das Original-Projekt
noch überetzt werden.

Es gibt auch die Möglichkeit über "als Verknüpfung
zufügen", aber das alles musst Du prüfen, ob es das
ist, was für Deinen Fall richtig ist.

Alles in allem bleibt für mich - wenn auch die Änderbarkeit
ein Ziel ist - als sinnvoller Weg, dass das Original-
Klassenbibliotheksprojekt mit in der Solution verknüpft
wird und von da aus die Änderungen durchgeführt werden.
Ob Auswirkungen andere Nutzer der Lib bestehen,
sollte mit berücksichtigt werden.
__________________________

Hier ein einfaches Beispiel einer ASP.NET MVC App
mit EF Einbindung (ist Dir ja sicher schon bekannt) :

[Creating a Tasklist Application with ASP.NET MVC]
http://www.asp.net/learn/mvc-videos/video-395.aspx


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen