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 manullino
Thema: ICommand - Default Binding in DependencyProperty
Am im Forum: GUI: WPF und XAML

Hi Palladin007,

Wie wuerdest du das genau machen, weil das Control die View nicht kennt?!

Vielen Dank,
Manullino

Thema: ICommand - Default Binding in DependencyProperty
Am im Forum: GUI: WPF und XAML

Hatte die Hoffnung, dass man das im Code tricksen kann, oder ein fallback gibt, wie in XAML.

Thema: ICommand - Default Binding in DependencyProperty
Am im Forum: GUI: WPF und XAML

Sorry, hätte vielleicht erwähnen sollen, dass die DependencyProperty von einem Control ist, was auf der View ist.

Bisher hatte ich das einfach uber eine direktes Binding in XAML gloest. Nun habe ich aber eine baseclass des Controls und diese soll als default an den EditCommand des ViewModels gebunden werden.

Vielen Dank,
Manullino

Thema: ICommand - Default Binding in DependencyProperty
Am im Forum: GUI: WPF und XAML

Hallo zusammen,

wie kann man denn ein default Binding fuer ein ICommand in einer DependencyProperty festlegen?

Mein Ziel ist ein default Binding zu dem "EditCommand" herzustellen, das EditCommand befindet sich auf dem ViewModel, meine base class kennt das ViewModel jedoch nicht.

new Binding("EditCommand"), steht als Platzhalter.




        public ICommand DoubleClickCommand
        {
            get { return (ICommand)GetValue(DoubleClickCommandProperty); }
            set { SetValue(DoubleClickCommandProperty, value); }
        }

        // Using a DependencyProperty as the backing store for DoubleClickCommand.  This enables animation, styling, binding, etc...
        public static readonly DependencyProperty DoubleClickCommandProperty =
            DependencyProperty.Register("DoubleClickCommand", typeof(ICommand), typeof(DataGrid), new PropertyMetadata(new Binding("EditCommand")));



Vielen Dank,
Manullino

Thema: CSV per Bulk Insert in die Datenbank schreiben bringt Type Mismatch
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: <MSSQL>

Hallo zusammen,

ich moechte eine CSV Datei mit Bulk Insert in den SQL Server importieren.
Leider komme ich mit der Format File nicht zurecht.

Folgendes SQL Statement:


BULK INSERT dbo.Table
FROM 'D:\Data\Table.csv'
WITH
(
CODEPAGE='RAW',    
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n',
FormatFile='C:\Header.fmt'
)

Die CSV hat folgenden Aufbau [Auszug]:
"2008-10-31 00:00:00","23:17",1,"2008-10-31 23:18:04","GGM",3,1,-4,"06:07","2008-10-27 00:00:00",0,0,"1900-01-01 00:00:00","","D51A5850-0F5A-4633-9815-6350146A9C4F","AA 1285","AA 1036","2F59208B-612B-4AA8-8758-473E644CEE22"

Zum Testen habe ich die Format File auf zwei Spalten beschraenkt:
Format File:
14.0
2
1   SQLDATETIME    	0  8  "\","   1    trArrivel  ""
2   SQLNCHAR    	0  5  "\","   2    trArrivelT ""


Leider scheitere ich schon beim ersten Feld.
Bin mir nur nich sicher, ob es ein allgemeiner Fehler oder ob es ein Fehler wegen dem DateTime Feld ist.

Die Fehlermeldung ist ein Type Mismatch:
Fehler
Bulk load data conversion error (type mismatch or invalid character for the specified codepage) for row 1, column 1 (trArrival)


Habt Ihr eine Idee?
Vielen Dank,
Manullino

Thema: MySQL zu MSSQL konvertieren (1,5TB)
Am im Forum: Datentechnologien

Mittlerweile ist die MSSQL auch auf eine SSD, was das Ganze schon ungemein schneller macht.
Das Problem, dass es immer langsamer wird, bleibt aber bestehen.

Meinen MYSQL Datenbank ist auch 1,5TB, daher hinkt der Verleich evtl. ein bisschen... ;-)

@T-Virus
Vielen Dank fuer den Hinweis, aber es ist nur eine Test Umgebung.

Einer der Tabellen enthaelt 500GB an Daten, da werde ich den Bulk Insert versuchen / anwenden.

Gruesse,
Manullino

Thema: MySQL zu MSSQL konvertieren (1,5TB)
Am im Forum: Datentechnologien

Hallo Khalid,

wie in meinem ersten Post geschrieben, arbeite ich mit Scripts und Linked Server. Ein eigenes Programm zu verwenden, war der Vorschlag von T-Virus.

@T-Virus:
Autogrowth steht auf ein 1GB und die TransactionLogs habe ich auf "SIMPLE" gestellt.
Gibt es noch weitere Parameter die man verbessern kann?

Vielen Dank,
Manullino

Thema: MySQL zu MSSQL konvertieren (1,5TB)
Am im Forum: Datentechnologien

Zitat
Hallo zusammen,

ich importiere gerade 5 Mio. Datensaetze in 100.000er Schritten.
(Select aus MYSQL, Insert into im MSSQL)

Pro Durchgang dauert das ganze unglaubliche 11 Minuten.
Also der Import startete, lag die Dauer bei 4 Minuten.

Je groesser die Tabelle ist, desto langsamer wird der import.
Index oder Primary Key ist/sind keine vorhanden.

Ich habe festgestellt, dass die Schreibrate bei nur 3BM/s liegt.
RAM liegt bei 60% Auslastung, und die CPU hat so gut wie nichts zu tun.

Die beiden Datenbanken sind auf getrennten HDDs. (keine SSDs!)
Kopiere ich eine Datei im Explorer, liegt die Schreibrate deutlich ueber den 3MB/s.

Im Resource Monitor ist die Queue Length der HDD waehrend des INSERT INTO ganz am Anschlag.

Wie kann ich den SQL Server dazu bewegen, in INSERT INTO schneller zu machen? ;-)

Sorry fuer den Doppelpost!

Dachte ich mach einen Thread auf, da ich das Problem nun mehr eingegrenzt und besser beschrieben haben.

Was mir nicht in den Kopf will, dass ein Insert Into abhängig von der vorhandenen Datenmenge langsamer wird, auch wenn kein Index oder Trigger definiert sind und die Hardware noch deutlich mehr Resourcen zur Verfuegung stellen koennte.

Das wurde Quasi bedeuten, dass eine Tabelle mit Mio. von Records, keine Sinn macht?!

Thema: Insert into von 100.000 - Schreibrate von 3MB/s
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: <MSSQL>

Hallo zusammen,

ich importiere gerade 5 Mio. Datensaetze in 100.000er Schritten.
(Select aus MYSQL, Insert into im MSSQL)

Pro Durchgang dauert das ganze unglaubliche 11 Minuten.
Also der Import startete, lag die Dauer bei 4 Minuten.

Je groesser die Tabelle ist, desto langsamer wird der import.
Index oder Primary Key ist/sind keine vorhanden.

Ich habe festgestellt, dass die Schreibrate bei nur 3BM/s liegt.
RAM liegt bei 60% Auslastung, und die CPU hat so gut wie nichts zu tun.

Die beiden Datenbanken sind auf getrennten HDDs. (keine SSDs!)
Kopiere ich eine Datei im Explorer, liegt die Schreibrate deutlich ueber den 3MB/s.

Im Resource Monitor ist die Queue Length der HDD waehrend des INSERT INTO ganz am Anschlag.

Wie kann ich den SQL Server dazu bewegen, in INSERT INTO schneller zu machen? ;-)

Vielen Dank,
Manullino

Thema: Schleife im SQL Script / Aufrufen von zweiten Script mit Parameter
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: <MMSQL>

Hallo zusammen,

In einem SQL Script soll eine Schleife erzeugt werden, die den aktuellen Count als Parameter an ein weiteres SQL Script uebergibt. Das Script wird im SQL Management Studio im SQLCMD Query Modus aufgerufen.

Leider scheitere ich gerade an dem Parameter. (Zeile 10)
:SetVar CountScript ??

[Edit:]
Fehlermeldung:

Fehler
Incorrect syntax near '@Count'.


Habe bisher auch noch keine Info gefunden, wie man den Parameter als Variable uebergeben kann. Weiss das jemand von Euch?

:setvar path "c:\temp\"

DECLARE @Count int, @Max int
SET @Count = 0
SET @Max = 10

WHILE @Count < @Max
BEGIN
PRINT @Count
:SetVar CountScript @Count
:r $(path)\2ndScript.sql
SET @Count = @Count + 1
END 


Vielen Dank & schoenes Wochenende,
Manullino

Thema: MySQL zu MSSQL konvertieren (1,5TB)
Am im Forum: Datentechnologien

Halllo Khalid,

vielen Dank fuer den Tipp, das werde ich gleich testen!

Mittlerweile ist der Test mit den 100.000 Records auch fertig. Es hat sage und schreibe 13,5h gedauert.
10.000 Records dauerten nur 20Min.

Was auch interessant ist, die Tablle mit 100.000 Records hat in MSSQL eine Datengroesse von 15,3GB, der Index ist 5GB gross. Die komplette Tabelle mit 1,3Mio Records hat in MYSQL aber nur 8GB.

Irgendwas scheint da nicht ganz zu passen?!

Gruesse,
Manullino

Thema: MySQL zu MSSQL konvertieren (1,5TB)
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: <MySQL, MSSQL>

Hallo zusammen,

ich bin gerade dabei eine Datenbank mit 1,5TB von MySQL nach MSSQL zu konvertieren.
Ich verwende dazu SQL Scripts im SQL Management Studio und einen Link (MySQL) Server wie hier angegeben. Für jede Tabelle verwende ich ein Script.

https://www.codeproject.com/Articles/29106/Migrate-MySQL-to-Microsoft-SQL-Server

Meine Test Umgebung ist:
MySQL 5.6.20
MSSQL 2017 (Developer)
Windows Server 2012R mit 8GB RAM. (etwa 4 GB stehen zur Verfügung)

Beide Datenbanken sind auf dieser Maschine lokal installiert.

Bei kleinen Tabelle oder wenn ich das MySQL Select Statement auf eine gewisse Anzahl begrenze (z.B. 1.000 oder 10.000) funktioniert die Konvertierung schnell. Erweitere ich aber die Anzahl die Sätze wird es sehr langsam.

Ich habe ein paar Test gemacht, u. A.:
10.000 Datensätze benötigen etwa 10x so lange wie 1.000 und 1.000 etwa 10x so lange wie 100.
Bei 100.000 trifft das leider nicht zu. (Diese Tabelle hat eine Größe von 8GB und 1.3 Mio. Datensätze)

Ich habe das Gefühl, dass sobald die Größe (In MB) der Datensätze die Größe meines Arbeitsspeichers überschreitet, diese Problem eintrifft.

Kann das jemand bestätigen? Bin für jeden Tipp dankbar!
Grüße,
Manullino

Thema: C# 8 in Depth bei Microsoft in Stuttgart Vaihingen 11.07.2018
Am im Forum: Szenenews

An welchem Termin soll das ganze denn stattfinden?
Gibt es einen Link zu der Veranstalltung?

Gruesse,
Manullino

Thema: EF 6 - Wie kann ich bei Verbindungsverlust auf eine Fallback Database zurückgreifen?
Am im Forum: Datentechnologien

HI T-Virus,

vielen Dank fuer die Aufklaerung!
Nochmal kurz scharf nachgedacht, es ist eigentlich eine statische Methode im Konstruktor.

Ist in einer Base Class und in der Config.Web kann man die Connectionstrings festlegen. Fuer meinen Zweck ist das flexibel genung. ;-)

Gruesse,
Manullino

Thema: EF 6 - Wie kann ich bei Verbindungsverlust auf eine Fallback Database zurückgreifen?
Am im Forum: Datentechnologien

Bisher gibt es keinerlei Probleme damit, bin aber offen fuer Vorschlaege! ;)


 public partial class MyContext : DbContext, IDBContext
    {
        public MyContext (bool isInServerMode) :
            base(GetConnectionString(isInServerMode))
        {
        }

        private static string GetConnectionString(bool isInServerMode)
        {
            string connectionStringName = "Server";
            string serverAdress = GetServerIP();

            if (!IsServerAvailable(serverAdress) || isInServerMode == false)
            {
                connectionStringName = "Local";
                Log(String.Format("Using {0} connection!", connectionStringName));
            }

            return String.Format("name={0}",connectionStringName);
        }
}

Gruesse,
Manullino

Thema: WCF als Service Layer fur Cross Platform Anwendungen?
Am im Forum: Netzwerktechnologien

Ich sehe schon worauf es hinauslaufen wird, WCF hat wohl einen schlecht stand bei Euch! ;-)

Thema: WCF als Service Layer fur Cross Platform Anwendungen?
Am im Forum: Netzwerktechnologien

Hallo zusammen,

bisher habe ich meine WPF Anwendungen zusammen mit einem WCF Service Layer erstellt. Nun moechte ich allerdings auch Xamarin & ASP verwenden. Wuerdet Ihr da weiterhin auf WCF als Service Layer setzen?

Wie sind Eure Erfahrungen mit WEB API oder SingalR z.B.?

Folgende Dinge sind mir wichtig.

  • Hostbar bei Azure oder 'lokal'
  • Authentication & Authorization


Vielen Dank,
Manullino

Thema: EF 6 - Wie kann ich bei Verbindungsverlust auf eine Fallback Database zurückgreifen?
Am im Forum: Datentechnologien

Hallo Abt,

hab das nun recht simpel mit einem statischen Konstruktor im DBContext umgesetzt. Darin wir der SQL Server gepingt, klappt das nicht, wird der andere SQL Server verwendet.

Gruesse,
Manullino

Thema: EF 6 - Wie kann ich bei Verbindungsverlust auf eine Fallback Database zurückgreifen?
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: <MSSQL>

Hallo zusammen,

falls EF die Verbindung zur Datenbank verliert, sollte ein Fallback Datenbank verwendet werden. Habt Ihr Erfahrungen wie das mit EF 6 umgesetzt werden kann?

Mir geht es nur um den Switch von DB1 zu DB2, dass die Daten dann noch synch. werden muessen, ist ein anderes Thema.

Vielen Dank,
Manullino

Thema: Alternative zu AzureMobileService, wenn man eine lokale DB mit Azure DB synchronisieren will?
Am im Forum: Datentechnologien

Es ist ja wohl mehr als logisch, dass ich offline keine Daten in der Clould speichern kann.

Alles was ich will, ist die Moeglichkeit lokal zu arbeiten, wenn ich offline bin. Danach sollen die Daten wieder mit Azure abgeglichen werden. Jeder kennt das doch von zig Apps die man selbst verwendet.

Thema: Alternative zu AzureMobileService, wenn man eine lokale DB mit Azure DB synchronisieren will?
Am im Forum: Datentechnologien

Habe oben bereits geschrieben, dass die Azure DB hinter einem Webservice sein soll.

Zitat
Wie von Euch beschrieben, soll die Kommunikation mit Azure auch per Webservice stattfinden.

Nur ist eben die Fragen, wie das mit dem lokalen cachen funktioniert, bzw. wie die lokalen Daten in die Clould kommen, wenn der Client offline ist. Offline DB für ein Webservice sozusagen.

Thema: Alternative zu AzureMobileService, wenn man eine lokale DB mit Azure DB synchronisieren will?
Am im Forum: Datentechnologien

Hallo Abt,

vielen Dank für die Nachricht. Jetzt ist mir klar warum wir ein bisschen aneinander vorbei gesprochen haben. Es lag am Wort "synchronisieren".

Du würdest die Azure Daten lokal cachen, ich will die lokalen Daten zu Azure synchronisieren. Im Endeffekt ist es das selbe, die Daten sollen im Server und auf dem Client die selben sein.

Vielleicht habe ich auch deshalb kaum etwas bei Google gefunden, weil ich nach „synchronisieren“ gesucht haben.

Hast Du etwas zur Hand, wie man Azure Daten lokal cachen kann?

Vielen Dank,
Manullino

Thema: Alternative zu AzureMobileService, wenn man eine lokale DB mit Azure DB synchronisieren will?
Am im Forum: Datentechnologien

Ist das jetzt gut oder schlecht, wenn sich fast 2 Jahren nichts mehr auf GitHub getan hat?!

Meine konkrete Problematik/Frage:
Eine UWP/Android/IOS App hat eine (via EF Core angebundene) lokale offline Datenbank, diese möchte ich mit einer Azure Datenbank synchronisieren. Wie stellt man das an?

Vielen Dank,
Manullino

Thema: Alternative zu AzureMobileService, wenn man eine lokale DB mit Azure DB synchronisieren will?
Am im Forum: Datentechnologien

Hallo zusammen,

vielen Dank für Eure Antworten.

Vielen Dank zur Erläuterung der Architektur, das war aber gar nicht die Frage. ;)
Wie von Euch beschrieben, soll die Kommunikation mit Azure auch per Webservice stattfinden.

Nur wie wird/soll die Synchronisation umgesetzt werden, da finde ich eben nur den Verweis zu AzureMobileService?! Das ist das eigentliche Problem.


Vielen Dank,
Manullino

Thema: Alternative zu AzureMobileService, wenn man eine lokale DB mit Azure DB synchronisieren will?
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: <MSSQL, SQLite>

Hallo zusammen,

Gibt des denn eine Alternative zu AzureMobileService, wenn man eine lokale Datenbank mit Azure DB synchronisieren will?

Hintergrund: Ich habe mit EF Core und dem .NET Standard 2.0 Projekt Type eine Basis Library erstellt die ich unabhängig von der verwendeten GUI verwenden koennte. Ich mochte eine App für Windows (WPF), Anriod und IOS entwickeln.

Vielen Dank,
Manullino

Thema: Wie kann ich in einem OpenQuery einen Cast durchführen?
Am im Forum: Datentechnologien

Den MySQL Query habe ich gefixt, es lag am IFNULL().

SELECT usName, CreateT, ChangeT, IF(DelT = '0000-00-00 00:00:00',CAST(NOW() AS DATETIME),DelT) AS DelT FROM Users

Allerdings gibt OPENQUERY fuer das Feld DelT nun einen falschen Wert (varbinary) zurueck.

0x323031372D31322D31322031323A35333A3338
Erwartet wird aber DateTime()
SELECT * FROM OPENQUERY(MYSQL, 'SELECT usName, CreateT, ChangeT, IF(DelT = "0000-00-00 00:00:00",CAST(NOW() AS DATETIME),DelT) AS DelT FROM Radex.Users')

Habt Ihr eine Idee?

Thema: Wie kann ich in einem OpenQuery einen Cast durchführen?
Am im Forum: Datentechnologien

Das Feld DelT gibt es schon in der Datenbank.

Hab den Query angepasst, bleibt aber bei dem NULL.

SELECT * FROM OPENQUERY(MYSQL, 'SELECT usName, CreateT, ChangeT, IFNULL(DelT,CAST(NOW() AS DATETIME)) AS DelT2 FROM DB1.Users')

Convert geht übrigens auch nicht:
SELECT * FROM OPENQUERY(MYSQL, 'SELECT usName, CreateT, ChangeT, IFNULL(DelT,CONVERT(NOW(), DATETIME)) AS DelT2 FROM DB1.Users')

Thema: Wie kann ich in einem OpenQuery einen Cast durchführen?
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: <MYSQL>

Hallo zusammen

wie kann ich den in einem OpenQuery einen Cast durchführen?
Das Result der Spalte DelT ist immer NULL.


SELECT * FROM OPENQUERY(MYSQL, 'SELECT usName, CreateT, ChangeT, IFNULL(DelT,CAST(2018-1-1 as DateTime)) AS DelT FROM DB1.Users')

Vielen Dank,
Manullino

Thema: XAML Extension in Basis Klasse auslagern
Am im Forum: GUI: WPF und XAML

Hallo teebeast,

kannst du mir bitte verraten wie Du das umgesetzt hast?
Welchen Event hast du dafür verwendet bzw. überschrieben?

Vielen Dank,
Manullino

Thema: XAML Extension in Basis Klasse auslagern
Am im Forum: GUI: WPF und XAML

Hallo zusammen,

nach langer Zeit habe ich nun mal wieder ein bisschen Freiraum fuer WPF. :)
Hierzu habe ich gleich mal eine Frage bzgl. Localization.

Ich nutze eine Extension um in XAML meine String zu uebersezten.
Hier auf Codeplex beschrieben: Klick

Nun wuerde ich den Code gerne in eine Basisklasse (z.B. des Label oder des Buttons) verschieben, damit ich nicht jedes mal die Extension "lex:Loc" tippen muss, ist das moeglich?

So soll der Code dann aussehen:

<x:Label Content="Test" />

anstatt:
<Label Content="{lex:Loc Test}" />

Vielen Dank,
Manullino