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 binaryblob
Thema: Tcp File Starten
Am im Forum: Netzwerktechnologien

Programm wurde noch etwas angepasst und läuft jetzt (Fehler Behandlung).

Auf einem Server ist das Problem aber immer noch, denke ist ein Systemproblem, auf anderen läuft es perfekt.

Gruss blob

Thema: Tcp File Starten
Am im Forum: Netzwerktechnologien

Hallo

Ist ein Beispiel, das ich momentan so teste.

Nein der TcpClient sendet nur das Paket und schliesst dann die Verbindung wieder... Und das funktioniert ja alles auch perfekt, auch die ganze TCP Sache... Allerdings wird der Prozess aufeinmal nicht mehr ausgeführt... Das ist das Problem.

Gruss blob

Thema: Tcp File Starten
Am im Forum: Netzwerktechnologien

Guten Tag

Ich habe ein Programm das nach einer Tcp Anfrage ein Programm starten soll.
Funktioniert auch soweit. Allerdings kommt es vor, dass das Programm nach mehreren Tagen Dauerbetrieb und Benutzung, auf einmal das definierte Programm nicht mehr startet (allerdings die Tcp Verbindung kann noch aufgebaut werden).

Was könnte das Problem sein? Oder hat jemand ein Stück Code, der stabil läuft?


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net.Sockets;
using System.Net;
using System.IO;
using System.Diagnostics;
using TcpFileStarter.Preferences;
using System.Threading;

namespace TcpFileStarter
{
    public partial class FormMain : Form
    {
        public FormMain()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            BeginListening();
        }

        private void BeginListening()
        {
            TcpListener server = new TcpListener(new  IPEndPoint(IPAddress.Any, 45555));

            server.Start();

            while (true)
            {
                byte[] buffer = new byte[12];
                TcpClient client = server.AcceptTcpClient();
                NetworkStream stream = client.GetStream();
                stream.ReadTimeout = 5000;

                try
                {
                    stream.Read(buffer, 0, buffer.Length);

                    if (Encoding.ASCII.GetString(buffer) == "EXECUTE_PROG")
                    {
                        Process.Start(new ProcessStartInfo(ConfigurationHandler.Configuration.FilePath));

                        stream.Close();
                        client.Close();

                        Thread.Sleep(20000); //Wenn Button mehrmals hintereinander, 20s warten...
                    }
                    else
                    {
                        stream.Close();
                        client.Close();
                    }
                }
                catch 
                {
                    stream.Close();
                    client.Close();
                }
            }
        }
    }
}

Gruss blob

Thema: ASP.NET Kalender Einbindung auf fremder Website
Am im Forum: Web-Technologien

Ja das Readonly ist nur eine erste Version. Schreibzugriff kommt auf jedenfall auch noch. Also ist das mit dem HTML-File nicht möglich.

Ist das wirklich so problematisch per TCP direkt auf dem Internet? Natürlich mit User + Pwd??

Kann ich replizieren mit SQL Server Express?

Danke

Thema: ASP.NET Kalender Einbindung auf fremder Website
Am im Forum: Web-Technologien

Hallo zusammen

Ich habe bei verschiedenen Kunden ein Reservationssystem im Einsatz (sozusagen ein etwas besserer Outlook Kalender).
Das läuft auf MSSQLSERVER und einer WinForms Anwendung.

Jetzt will ich eine einfach Anzeige im Web realisieren (also erstmal nur Readonly).

Meine Idee ist das ganze bei einem ASP Hoster zu hosten und auf die Daten beim Kunden zuzugreifen (per SQL TCP) und dann die Möglichkeit zu geben das die Kalenderansicht per "iframe"?! bei der Kunden Website eingebunden werden kann.

Ist das eine gute Lösung, oder gibt es besseres?

Danke für Auskunft

Thema: SQL in Linq
Am im Forum: Datentechnologien

Ok, danke allen für die Antworten!

Werde das Filtern mal grundsätzlich überarbeiten...!

Thema: SQL in Linq
Am im Forum: Datentechnologien

Ja das geht super, danke!


Du hast geschrieben:

PS: Ist es gewollt, dass TeamHandler.ActiveItems auch geändert wird? Das passiert nämlich



Ich weis schon, ich weise die filtered Instanz den ActiveItems zu, aber beim Debuggen wird nie etwas aus ActiveItems gelöscht??!!? Was ist ja auch nicht will... Aber wieso ist das so?

So ist es implementiert:

      internal static List<Team> ActiveItems
        {
            get { return DbAccess.GetNewDataContext().Team.Where(obj => !obj.Inactive).OrderBy(obj => obj.Company).ToList(); }
        }

Thema: SQL in Linq
Am im Forum: Datentechnologien

Ja, das ist schon so, aber ich weis nicht genau wie die LINQ Abfrage formulieren bei n:n Beziehungen, das ist mein Hauptproblem.

Thema: SQL in Linq
Am im Forum: Datentechnologien

Hallo

Ich verwende momentan folgende Abfrage um Daten zu filtern von SQL Server via LINQ.

           
           internal static List<Team> FilteredActiveItems(Entity entity)
           {
              //Teams
              List<Team> filteredTeams = TeamHandler.ActiveItems;
              for (int i = filteredTeams.Count - 1; i ≥ 0; i--)
              {
                  bool exists = false;

                  foreach (EntityTeam obj in filteredTeams[i].EntityTeam)
                  {
                      if (obj.Entity.EntityId == entity.EntityId)
                      {
                          exists = true;
                          break;
                      }
                  }

                  if (!exists) filteredTeams.RemoveAt(i);
              }

              return filteredTeams;
           }

Grundsätzlich mal werden zuerst alle Teams der filteredTeams Liste zugewiesen. Nachher wird durch diese Liste iteriert und solche Teams gelöscht die keine Entsprechendes "Entity" zugewiesen haben. Danach die modifizierte Liste zurückgegeben.

Einem Team können mehrere Entitys zugewiesen sein und einem Entity mehere Teams. (n:n über Zwischentabelle)

Performancemässig sehr langsam. Gibt es da bessere Lösungen? Oder wie sieht ein LINQ Query aus für so einen Anwendungsfall?

Danke!

Thema: Linq2Sql: Multiuser und mehre DataContexte
Am im Forum: Datentechnologien

Ok, werde das mal anschauen!

Danke euch für die Hilfe!

Gruss blöb

Thema: Linq2Sql: Multiuser und mehre DataContexte
Am im Forum: Datentechnologien

Ja, allerdings hat man ja mit den Linq Klassen schon eine gute Trennung, darum finde ich das ganze etwas umständlich noch mal zu machen...

Thema: Linq2Sql: Multiuser und mehre DataContexte
Am im Forum: Datentechnologien

Hallo Gü,

Danke für die Antwort!

Ich generiere meine DB direkt auf VS mit CreateDatabase().

Jetzt wenn ich das richtig verstehe, müsste ich für jede Entität sozusagen eine zusätzliche Klasse machen.

Aber was ich nicht sehe, schlussendlich will ich ja nicht z.B. auf WCF umstellen, sonder weitherhin die Daten über InsertOnSubmit() in die DB füllen.

Aber da bin ich doch schlussendlich wieder gleichweit, wie am Anfang oder kapiere ich den Ansatz nicht??

Weiter ist das Problem, es geht hier um eine DB mit etwa 20 Tabellen, also etwas ein grober Aufwand, für ein Problem, das doch eigentlich einfacher lösbar sein sollte?!!

Danke

Thema: Linq2Sql: Multiuser und mehre DataContexte
Am im Forum: Datentechnologien

Hallo Gü

Ok, verstehe noch nicht ganz was du mit POCOs meinst, kann du mir da kurz ein vertändliches Bsp. geben?

Danke!

Thema: Linq2Sql: Multiuser und mehre DataContexte
Am im Forum: Datentechnologien

Hallo zusammen

Habe eine Art Kalender Programm (wie Outlook) in das mehrere Benutzer gleichzeitig Daten schreiben und lesen können.

Benutzt als DB, SQL-Server über Netzwerk mit LINQ.

Ich benutze momentan 1 DataContext in meiner Anwendung, der also einmal erstellt wird und dann alles über denn gemacht wird. Bis das Programm wieder geschlossen wird.


Dazu mehrere Fragen:
1. Ist das gut 1 DataContext, oder sollte ich für jede Aktione einen neuen instanzieren?

Habe relativ viele solche Funktionen

        internal static void Check(Season season)
        {

            foreach (Season ses in DatabaseContext.Season)
            {
                if (ses == season)
                {
                    SetText("FOUND");
                }
            }
         }

Wenn jetzt aber das übergebene Season nicht vom gleiche DataContext ist, wird es nicht gefunden oder ich müsste noch Attach machen... Irgendwie beschissen! Oder müsste ich direkt den Primarykey checken und nicht die Objekte vergleichen? Irgendwie sehe ich das noch nicht ganz...

2. Wenn Änderungen von einem anderen User gemacht wurde, müssen das natürlich die anderen Programme mitkreigen, wie kann ich am einfachsten DataContexte Refreshen?

Danke für die Auskunft!

Thema: LINQ altes InsertOnSubmit Fehler
Am im Forum: Datentechnologien

Guten Tag

Wenn ich über InsertOnSubmit bei LINQ ein Entity löschen will. Bekomme ich eine Fehlermeldung das noch Abhänigkeiten also Fremdschlüssel vorhanden sind. Soweit OK!

Aber wenn ich jetzt z.b. ein anderes Entity löschen will, das keine Abhängigkeiten hat, bekomme ich wieder eine Ausnahme vom vorherigen!

Sozusagen wird das alte DELETE bei einem SubmitChanges mit Fehler, nicht gelöscht! Wie kann ich das handeln?

ObjectTrackingEnabled scheint eine Möglichkeit zu sein, aber macht das wirklich das richtige??

Danke

Thema: LINQ Einschränkungen
Am im Forum: Datentechnologien

Ok, und wie kann ich das einfach anpassen, weil früher oder später evtl. mehrere gleichzeitg geändert werden?

Danke!

Thema: LINQ Einschränkungen
Am im Forum: Datentechnologien

Hallo Khalid

Danke für die Rückmeldung!

Noch eine Frage du hast gesagt das der Trigger nur "pro Menge" ausgeführt wird.
Das habe ich noch nicht ganz begriffen.
Was heisst das in meinem Fall jetzt genau?

Über das GUI kann immer (momentan) nur 1 Datensatz ausgewählt werden und der wird dann bearbeitet und gespeichert, aber was passiert wenn 2 Clients zur gleichen Zeit etwas ändern, klar der letzte Gewinnt, aber muss ich da jetzt den Trigger noch irgendwie anpassen oder wird der jetzt immer ausgeführt??

Danke!

Thema: LINQ Einschränkungen
Am im Forum: Datentechnologien

CREATE TRIGGER alert_me
ON dbo.Location
AFTER UPDATE
AS

IF NOT UPDATE(Inactive)
	RETURN
 
IF NOT (SELECT Inactive from inserted) = 1
	RETURN
	
IF (select count(*) from dbo.Entity, inserted where dbo.Entity.LocationId = inserted.LocationId AND dbo.Entity.Inactive = 0) > 0
	BEGIN
		ROLLBACK
		RAISERROR ('Inactive is 1', 16, 10)	
	END
ELSE
	RETURN	
GO

So ist das gut in etwa, oder habe ich was übersehen?

Danke

Thema: LINQ Einschränkungen
Am im Forum: Datentechnologien

Hat evtl. jemand eine Trigger Beispiel, mit einer ähnlichen Situation wie ich Vater, Kind Aktiv/Inaktiv?

Danke

Thema: LINQ Einschränkungen
Am im Forum: Datentechnologien

Jaaaa, das hört sich gut an! Und was ist in meinem Fall zu empfehlen? Danke

Thema: LINQ Einschränkungen
Am im Forum: Datentechnologien

Ja andere Lösung gibts ja nicht, ausser einen Server... Und das ganze über die DB zu machen, wäre ja wohl das sauberste finde ich....

Thema: LINQ Einschränkungen
Am im Forum: Datentechnologien

Wenn wieder ein Kind aktiviert werden soll: So wird das durch das Clientprogramm verhindert (nur möglich wenn Vater auch aktiv). Aber auch hier wäre eine DB Lösung viel eleganter....

Aber das Hauptproblem ist, wenn jetzt ein Client alle Kinder auf inaktivität überprüft, OK meldet -> dann kommt ein anderer Client setzt ein Kind Aktiv -> dann der alte Client setzt den Vater inaktiv (da er meint alle Kinder seien inaktiv).

Das ist ein Problem im ms Bereich, für das es doch praktische Lösungen geben sollte?

Danke

Thema: LINQ Einschränkungen
Am im Forum: Datentechnologien

Das Problem ist, das man das Flag des einten Records nur auf true setzen können sollte, wenn alle Flags in einer anderen Tabelle auf false sind.

Die haben eine Beziehung untereinander. Sozusagen wenn alle Kinder deaktiviert sind, soll erst der Vater deaktivierbar sein.

Und wenn jetzt ein Client zwischen den Auslesen und deaktivieren des Vaters eben noch ein Kind aktiv setzt, ist dann sozusagen die DB aus Sicht der Anwendung inkonsistent...

Darum wenn man das beim SQL-Server definieren könnte, wäre es zu 100% sicher! Klar?

Gruss bin

Thema: LINQ Einschränkungen
Am im Forum: Datentechnologien

Unwahrscheinlich schon, aber nicht unmöglich... Vielleicht nehme ich es aber etwas zu genau ;-) Danke

Thema: LINQ Einschränkungen
Am im Forum: Datentechnologien

Ok, danke für den Tipp! Aber Grundproblem besteht so ja immer noch...

Thema: LINQ Einschränkungen
Am im Forum: Datentechnologien

Hmm das ist eine Lösung, aber etwas aufwendig.... Gibt es nicht etwas praktischeres?

Danke

Thema: LINQ Einschränkungen
Am im Forum: Datentechnologien

Hallo Zusammen

Ich verwende SQL-Server 2008 R2 mit LINQ und greife über .NET 4.0 darauf zu.

Folgende Frage: Ich habe z.B. eine Tabelle die ein bool Feld "Aktiv" hat. Dieses Aktivfeld sollte aber nur gesetzt werden können (auf true), wenn in einen anderen Tabelle alle Records ihr "Aktiv" Feld auf false haben.

Eigentlich eine einfache Sache: Kurz alle Items über foreach durchgehen und wenn alle false, kann ich das eigene Item true setzen. Aber wenn ich Multiuser Zugriff habe, könnte ja einer in dieser Zeit ein Item ändern... Was dann zwar für die DB Ok ist, aber für meine Applikation nicht....

Gibt es nicht eine Möglichkeit das über die Tabellen zu definieren? Oder wie löst man solche sachen?

Danke

Thema: LINQ TO SQL im GUI
Am im Forum: Datentechnologien

Ok, danke euch für die Infos... Aber werde wahrscheinlich ein ListView nehmen, gibt zwar mehr zu tun, ist dafür schöner....

Thema: LINQ TO SQL im GUI
Am im Forum: Datentechnologien

Eben, dann bin ich soweit, das es für Inserts nicht mehr eine sehr simple Methode gibt.... Danke

Thema: LINQ TO SQL im GUI
Am im Forum: Datentechnologien

Hey

Hmm, wenn ich mich etwas umschaue, finde ich kaum ein praktisches Beispiel um EINFACH Linq Daten in einem DataGridView zu bearbeiten und automatisch wieder in die DB zu speichern.... oder neue Records zu speichern... Entweder suche ich am falschen Ort, oder es gibt nicht vieles.....

Danke