Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von Blue_Dragon
Thema: Klasse unter Navigation Property ebenfalls aktualisieren, wenn Entity aktualisiert wird
Am im Forum: Datentechnologien

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.

Thema: Klasse unter Navigation Property ebenfalls aktualisieren, wenn Entity aktualisiert wird
Am im Forum: Datentechnologien

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

Thema: Wie bestimmen, welches Property von anderer Klasse (Nav. Property) im UI angezeigt werden soll?
Am im Forum: Datentechnologien

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.

Thema: Mechanische Anlagen im Browser visualisieren
Am im Forum: Web-Technologien

Hallo,

Danke für die Antworten!

Ich habe mir einmal SVG angesehen. Das sieht sehr vielversprechend aus!

Thema: Mechanische Anlagen im Browser visualisieren
Am im Forum: Web-Technologien

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!

Thema: Eval("Content") liefert kein HTML
Am im Forum: Web-Technologien

Hallo,

Stelle den Eval Mode auf PassTrough, dann sollte er das HTML nicht wegschneiden.

Probier das mal

<%# Eval("Content") Mode="PassTrough" %>

Thema: EntityFramework: GUI über Veränderungen benachrichtigen
Am im Forum: Datentechnologien

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.

Thema: Kaffeebedarf und -versorgungszustand am Arbeitsplatz
Am im Forum: Smalltalk

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.

Thema: FO.NET (XSL-FO to PDF renderer): Dokumente modularisieren / Include für Dokumente
Am im Forum: Rund um die Programmierung

Hallo,

Der Ansatz klingt sehr gut! Großes Danke, ich werde dass wohl so umsetzen!

Ob das mit ITextSharp geht werde ich mir ansehen =)

Thema: FO.NET (XSL-FO to PDF renderer): Dokumente modularisieren / Include für Dokumente
Am im Forum: Rund um die Programmierung

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.

Thema: FO.NET (XSL-FO to PDF renderer): Dokumente modularisieren / Include für Dokumente
Am im Forum: Rund um die Programmierung

Hallo,

Im Moment schreibe ich an einer Applikation, in welcher am Ende mehrere Dokumente für den Kunden ausgedruckt werden sollen.

Darunter sind unter anderen folgende Dokumente:

-) Haushaltsrechnung
-) Datenschutzerklärung
-) div. Anträge

diese einzelnen Dokumente werden in größeren "Hauptanträgen" eingefügt. So wird zum Beispiel ein Dokument "Konzept" erzeugt, in welchem z.B. die Haushaltsrechnung eingefügt werden.

Im Moment wurde das Markup für die Haushaltsrechnung per Hand in das Konzept kopiert. Und beider jeder Änderung müssen beide Dokumente bearbeitet werden.

Kennt jemand von euch einen guten Weg dies zu "modularisieren" und ein include in den Dokumenten oder ähnliches zu machen?

Thema: SQL Daten in GridView
Am im Forum: Web-Technologien

Hallo,

Du solltest dich wenn du das so lösen willst, wohl erstmal ein bisschen in die Möglichkeiten von DataSource Objekten in Zusammenhang mit der GridView einlesen.

Wenn du aus der Datenbank ließt, könntest du das ganze über eine SQL Datasource machen.

MSDN SQLDataSource

Über Google findest du sicher auch genug Beispiele wie du damit umgehen kannst und deine Probleme damit lösen kannst.

Edit (zu früh abgesendet):

Wenn du in der GridView eigene Spalten hinzufügen willst, kannst du das z.B. über ein BoundField lösen wo du in einem ItemTemplate eine Checkbox einfügst. Die Spalten kannst du über das Column Property in der GridView nach belieben aufbauen.

Hier ein Beispiel

Thema: Kein login auf website möglich
Am im Forum: Web-Technologien

Hallo,

Wo führst du die Anwendung denn aus? Im IIS oder im Development Server?

Es scheint ein Problem mit dem Benutzer zu geben...

Hast du in der web.config folgenden Eintrag?

<anonymousIdentification enabled="true"/>

Versuch einmal die anonymousIdentification auf true zu setzen und schau ob es dann funktioniert.

Thema: Kein login auf website möglich
Am im Forum: Web-Technologien

Kannst du bitte einmal deinen ConnectionString posten?

Thema: Gridview zeigt alten wert nach aktualisierung
Am im Forum: Web-Technologien

Wie sieht denn dein PageLoad Code aus?

Hast du eine Abfrage nach dem Postback drinnen?

Aus dem Bild geht hervor, dass du die GridView mit DataBinding befüllst. Auf welche DataSource gehst du denn da? Aktualisierst du die DataSource nachdem du das Update geschrieben hast?

Thema: [gelöst] EF - DataGrid mit Buttonspalten
Am im Forum: Web-Technologien

Du kannst in deiner Gridview ein Itemtemplate einfügen.

<asp:TemplateField>
<ItemTemplate>
<asp:Button ID="Button1" Runat=Server OnClick="Button1_Click" />
</ItemTemplate>
</asp:TemplateField>

Ist dass das was du brauchst?

Thema: [erledigt] Gridview aus DataTable -> Design ändern
Am im Forum: Web-Technologien

Du musst in der GridView die AutoGenerateColumns Eigenschaft auf False setzen.

Im Moment hast du automatisch generierte Spalten und die BoundFields die du gesetzt hast.

Lg

Thema: Kann nicht über Programm auf SQL Server 2005 in einem Netzwerk zugreifen
Am im Forum: Datentechnologien

Hallo,

Baue deinen ConnectionString besser mit dem ConnectionStringBuilder.

http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnectionstringbuilder.aspx

Thema: VS 2010 Klassendiagramm: Stereotyp hinzufügen
Am im Forum: Rund um die Programmierung

Hallo,

Ich beschäftige mich gerade mit der Modellierung in Visual Studio 2010.

Ich habe mir ein Klassendiagramm angelegt und wollte nun zu Testzwecken ein bisschen modellieren um mich an die Funktionen in Visual Studio zu gewöhnen.
Dabei ist mir aufgefallen, dass ich wenn ich eine Klasse erstelle bei den Stereotypen nicht auswählen kann, ob es sich bei der Klasse um einen Entity-, Controller- oder Boundaryklasse handelt.

Weiß jemand wie ich dieses Stereotyp in VS hinzufügen kann, oder geht das schlicht und ergreifend nicht?

Thema: PlugIn-Funktionalität in eigene Anwendung einbauen
Am im Forum: Rund um die Programmierung

Hallo,

Für Pluginfunktionalität bietet dir das MEF (Microsoft Extensibility Framework) eine gute Basis.

MSDN Artikel:

Managed Extensibility Framework Overview

Ein Beispiel über die Verwendung des MEF:

FileSystemWatcher mit MEF / Neue Plugins automatisch nachladen


Alternativ zum MEF gibt es auch noch folgende Vorgehensweise:

1.) Interface erstellen, von welchem die .dll's die du laden willst ableiten (einfachste Form einfach nur eine "PluginStart()" Methode.

2.) Die .dll's im Ordner über die integrierten Reflection Technologie des .NET Frameworks einlesen und prüfen ob sie das Interface ableiten.

3.) Die "PluginStart()" Methode der .dll Aufrufen.

Thema: SQL Datenbank ohne Server-Installation?
Am im Forum: Datentechnologien

Hallo,

Ich weiß nicht ob ich dich richtig verstehe...

Du hast dich als gerade in C# eingearbeitet und möchtest jetzt den Umgang mit Datenbanken üben?

Dann wäre wohl Microsoft SQL Express (kostenlos) etwas für dich:

http://www.microsoft.com/downloads/de-de/details.aspx?FamilyID=4c392a8f-9573-4802-9c93-90790b634761

Hierbei musst du jedoch eine Datenbank installieren. Ich erachte es aber als Sinnvoll dass du so anfängst den Umgang mit Datenbanken zu üben, da du von .NET Code aus schön und einfach auf SQL-Server Datenbanken zugreifen kannst. Das sollte dir das anfängliche Üben etwas erleichtern und du solltest relativ einfach den Umgang mit Datenbanken aus C# Code heraus lernen können.

Wenn du mal soweit bist, wirst du bestimmt selbst andere Lösungen für File-basierte Datenbanken finden.

Und du kannst ja den Connection-String für die Datenbank dann in die Web.Config oder App.Config auslagern und dann dort entsprechend ändern falls du Datenbank wechseln möchtest.

Ich hoffe das hilft dir weiter.

Thema: Ist Visual Studio auch für HTML5 und JavaScript (jQuery) geeignet?
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Alternativ zu Aptana kann ich dir auch noch WebStorn von Jetbrains empfehlen.

Thema: Ist Visual Studio auch für HTML5 und JavaScript (jQuery) geeignet?
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Visual Studio 2010 bietet dir für jQuery auch IntelliSense an

Thema: Resharper meckert out Parameter in Delegate an [==> Bug von Resharper fixed in V6.1]
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Servus,

Ja das ist ein Bug im Resharper...

Sollte mit Version 6.1 gefixt worden sein.

resharper not recognizing out type variable in method parameters

Lg

Thema: Coding Styles Horror
Am im Forum: Smalltalk

Hi,

Habe das gerade in unserem Code gefunden:

            switch (p_EventTrigger)
            {
                case QObjectEvent.OnCreate:
                case QObjectEvent.OnPrepareCommit:
                case QObjectEvent.OnCommit:
                    {
                        if (property != null)
                            args = new QObjectEventArgs(p_EventTrigger, property);
                        else
                            args = new QObjectEventArgs(p_EventTrigger);

                        break;
                    }
                case QObjectEvent.OnOpen:
                case QObjectEvent.OnOk:
                case QObjectEvent.OnCancel:
                case QObjectEvent.OnPropertyChange:
                    {
                        args = new QGuiEventArgs(p_EventTrigger);
                        break;
                    }

            }

Ich bin gerade am überlegen ob ich das umschreiben sollte oder nicht... ;-)

Thema: PDF-Dateigröße verkleinern?
Am im Forum: Rund um die Programmierung

Hallo,

Font Embedding kannst du in deiner BaseFont Klasse kannst du folgenden Aufruf machen:

myBaseFont.setSubset(true)

Dann werden die Fonts so optimiert, dass das PDF immer gelesen werden kann aber nicht bearbeitet werden kann.
Dadurch schrumpft natürlich die Filegröße.

Lg
Dragon

Thema: TCP/IP Verbindung zwischen 2 ServerClient Anwendungen aufbauen
Am im Forum: Netzwerktechnologien

Wie oft sendest du von deinem Client bzw. Server den string denn weg? Oder was genau ist deine Frage?

Es wäre hilfreich wenn du eventuell deinen Code dazu posten würdest

Thema: Image Background Transparent machen
Am im Forum: Grafik und Sound

Hallo,

Vielleicht kann mir einer von euch kurz weiterhelfen.

Ich habe ein Image das ich über einen URI einlesen und anschließend in einem Image Control in einer WPF Anwendung anzeige.

                BitmapImage maklerimage = new BitmapImage(new Uri(maklerLogoPath));
                //Image maklerImg = new Image();
                //maklerImg.Source = maklerimage;
                //dp_Logo.Children.Insert(0,maklerImg);
                ImgMakler.Source = maklerimage;

Ich soll von diesem eingelesenen Image den Background Transparent machen. Dazu muss ich nur das Pixel auf der Stelle 0,0 nehmen und diese Farbe als Transparenz setzen. In der zugehörigen Webapplikation mache ich dies in einem ImageHandler folgendermaßen:

 byte[] a_image = MaklerStateManager.CurrentElemQKernel.GetContent(a_logo);

                        
                        MemoryStream ms = new MemoryStream(a_image);
                        Image logoimage = Image.FromStream(ms);

                        // We have to convert the Image to a Bitmap, so we can make the background Transparent
                        Bitmap logo = new Bitmap(logoimage);

                        if (ConfigurationManager.AppSettings["MaklerLogoTransperency"] == "On")
                            logo.MakeTransparent(logo.GetPixel(0, 0));

                        //set Content-Type (for Transparent Background images)
                        //always set Png
                        ImageInfo a_imageInfo = new ImageInfo(logo);
                        ContentType = System.Drawing.Imaging.ImageFormat.Png;

                        return a_imageInfo;

Ich weiß allerdings nicht so ganz genau wie ich dieses Vorgehen in WPF umsetzen kann, da ich keinen Image-Typen finde bei dem ich den Background Transparent machen kann und den ich anschließend an die Source des Image-Controls binden kann.

Thema: Seitennummerierung in FO.NET pro Bereich
Am im Forum: Rund um die Programmierung

Super, danke !!!

Damit funktioniert das ganze auch schon ;-).

Dann gleich zur nächsten Frage: Kennt jemand von euch vielleicht einen guten grafischen Editor indem man das Layout für FO Dokumente designen kann?

Thema: Seitennummerierung in FO.NET pro Bereich
Am im Forum: Rund um die Programmierung

Zitat von Grumbler85
Ich kenne FO nicht, deshalb kann ich dazu nichts sagen, aber was auf jeden Fall geht: Teile einfach dein Dokument in 2 auf.

Das hätte ich mir auch schon gedacht. Das Problem ist nur, dass ich dann auch den Code Ändern müsste indem ich das XSL:FO überhaupt einlese und da das System schon Produktiv ist, anschließend HotFixen müsste.

Wenn ich nur das FO ändere, kann ich es einfach als Ressource austauschen und gut ist es.

Aber ich glaube über <fo:block id="intern" /> bin ich dem ganzen schon auf der spur da ich mir das so in blöce aufteilen kann. Jetzt muss ich noch nur sehen, wie ich dann einen 2ten Bereich in einem Dokument wieder mit Seitenzahl 1 beginnen lasse ;-)