Hallo,
Bin gerade selbst auf die Lösung gekommen. Hab den Wald vor lauter Bäumen nicht gesehen und vergessen den ForeignKey zu deklarieren.
Die Korrekte Lösung ist natürlich folgende:
public virtual ICollection<Employee> ProjectMembers { get; set; }
public virtual ICollection<Content> Content { get; set; }
public virtual ICollection<Task> Tasks { get; set; }
[DisplayName("Projektleiter")]
public virtual Employee Projectleader { get; set; }
[DisplayName("Kunde")]
public Customer Customer { get; set; }
[ForeignKey("Projectleader")]
public Guid? ProjectleaderID { get; set; }
public Guid? CustomerID { get; set; }
Thread kann also gelöscht werden.
verwendetes Datenbanksystem: MSSQL Server mit Entity Framework
Hallo Leute,
Ich versuche mit Entity Framework ein Objekt, dass unterschiedliche Referenzen auf andere Objekte hält zu speichern. Alle Objekte sind als eigene Tabellen in der Datenbank durch Code-First angelegt worden.
Mein Code zum speichern ist folgender:
project.Projectleader = db.Employees.Where(e => e.EmployeeID == new Guid(Projectleader)).FirstOrDefault();
project.Customer = db.Customers.Where(c => c.CustomerID == project.CustomerID).FirstOrDefault();
db.Entry(project).State = EntityState.Modified;
db.SaveChanges();
Die Definition meiner Project Klasse sieht so aus:
public class Project
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public Guid ProjectID { get; set; }
.......
public virtual ICollection<Employee> ProjectMembers { get; set; }
public virtual ICollection<Content> Content { get; set; }
public virtual ICollection<Task> Tasks { get; set; }
[DisplayName("Projektleiter")]
public Employee Projectleader { get; set; }
[DisplayName("Kunde")]
public Customer Customer { get; set; }
public Guid? CustomerID { get; set; }
}
Der Customer wird ohne Probleme gespeichert, den Projctleader updated er allerdings nie.
Habt Ihr einen Tipp für mich, an was das liegen kann? Der Projectleader wird in der DB Suche auf jeden Fall gefunden und bevor db.SaveChanges() aufgerufen wird, ist das Projectleader Property auch gesetzt. Es wird nur nicht mit in die DB geschrieben
Hallo,
Wisst ihr ob es ein Attribut gibt, bei welchem ich setzen kann, welches Element von einer über ein Navigation Property verbunden Klasse in einer ASP.NET MVC Razor View angezeigt werden soll?
Ich habe folgende Klassen:
public class Employee
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public Guid EmployeeID { get; set; }
public string Firstname { get; set; }
public string Lastname { get; set; }
public string Street { get; set; }
public string Zip { get; set; }
public string City { get; set; }
public string EmployeeCode { get; set; }
public double Salary { get; set; }
public string EMail { get; set; }
public string Phone1 { get; set; }
public string Phone2 { get; set; }
//Foreign Keys
public Guid? RoleID { get; set; }
public Guid? TeamID { get; set; }
// Navigation Properties
public virtual Role Role { get; set; }
public virtual Team Team { get; set; }
}
public class Team
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public Guid TeamID { get; set; }
public string Teamname { get; set; }
public string Location { get; set; }
public virtual Employee TeamLeader { get; set; }
public virtual ICollection<Employee> TeamMembers { get; set; }
}
public class Role
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public Guid RoleID { get; set; }
public string Rolename { get; set; }
}
In der automatisch generierten View, wird für die Role eine Dropdownbox angezeigt wo ich aus allen in der Datenbank hinterlegten Rollen auswählen kann. Der Value der Dropdown ist das Rolename Propertie.
Bei Team bekomme ich jedoch nur eine Textbox mit der TeamID.
Was übersehe ich hier?
Ich hoffe ihr könnt mir weiterhelfen.
Hallo,
Danke für die Antworten!
Ich habe mir einmal SVG angesehen. Das sieht sehr vielversprechend aus!
Hallo,
Ich arbeite derzeit an einer Lösung, eine Anlage über eine Webanwendung zu visualisieren.
Bei den Anlagen handelt es sich um zum Beispiel um LNG Gasanlagen. Die Bauteile die auf der Anlage stehen (Lagertanks, Pumpen, Verdampfer, usw.) sind in der Datenbank eingetragen. Zu jeder Komponente werden auch Bilder für die Visualisierung gespeichert.
Die einzelnen Bauteile sollen auf verschiedene "Screens" aufgeteilt werden, und auf diesem frei positioniert werden. Dafür habe ich in der Datenbank bei den Objekten die entsprechenden Felder eingefügt, dass ein Objekt weiß, auf welchem Screen es platziert wurde und auf welchen Koordinaten die linke obere Ecke des Bildes platziert ist.
Meine Frage ist jetzt, ob ihr ein Framework kennt, mit welchem man ein Koordinatensystem wie zum Beispiel bei einem HTML5 Canvas aufbauen kann, und die Objekte aus der Datenbank mit zum Beispiel dem Bild + Titel vernünftig anzeigen kann und auch am Server dann die Koordinaten ordentlich in die DB speichern kann?
Ich denke, dass dies Broswerseitig mit einem Javascript Framework wie zum Beispiel Konva gelöst werden sollte. Oder seid ihr da anderer Meinung?
Ich wäre für Inputs sehr dankbar!
Hallo,
Stelle den Eval Mode auf PassTrough, dann sollte er das HTML nicht wegschneiden.
Probier das mal
<%# Eval("Content") Mode="PassTrough" %>
Hallo,
Das EF ist ein O/R-Mapper, der auf das Persistieren von Daten ausgelegt ist. Also ist es korrekt, dass dein DataContext ein kürzere Lebensspanne haben sollte, da er sich nicht darum kümmern sollte deine Domain Klassen Objekte zu informieren wenn sich Daten in der DB ändern.
Dein Problem bezieht sich in diesem Fall denke ich eher auf die Architektur deiner Software. Wenn du Daten irgendwo anzeigst solltest du diese auch jedesmal neu laden wenn mehrere gleichzeitige Verbindungen auf die Datenbank sein können.
Bei uns gibt es 3 Kaffeemaschinen aufgeteilt auf 2 Stöcke. Im oberen Stock wo Entwickler/Consultants sitzen, stehen 2 davon.
Das sind Nespresso Businesskapselmaschinen und die laufen den ganzen recht brav 😉.
Ich persönliche trinke so etwa 4 Tassen Kaffee am Tag. Der erste morgens ist mit einem Tropfen Milch, die folgenden bleiben schwarz. Zucker im Kaffee mag ich nicht wirklich.
Teebeutel gibt es auch in 6 verschiedenen Sorten zur freien Entnahme. Die verwende ich aber eher in der kalten Jahreszeit oder wenn ich gesundheitlich etwas angeschlagen bin.
Hallo,
Der Ansatz klingt sehr gut! Großes Danke, ich werde dass wohl so umsetzen!
Ob das mit ITextSharp geht werde ich mir ansehen =)
Hallo,
Ich meine das Einfügen im XSL-FO. Da beispielsweise die Seitennummern korrekt mitgezählt werden müssen, kann ich leidernicht beide Dokumente als PDF generieren und dann zu einem PDF mergen. Zumindest ist mir keine Möglichkeit bekannt.