2017-03-31 5 views
0

Im Entwickeln einer App, die in Azure gehostet wird. Auf meiner Entwicklungsmaschine, wenn ich Daten bearbeite und speichere (britisches Format - sparend zu lokalem sql Server 2012) theres kein Problem. Wenn ich die gleiche Codebasis zu Azure (gleiche Datenbankstruktur & Version SQL Server - db in VM in Azure gehostet) bereitstellen Im einen Fehler bekommenAzure Web Service App Datumsformat Problem

‚der Wert 23/01/2014‘ gilt nicht für Vertragsdatum

hat jemand anderes so etwas erlebt und könnte mir ein paar Hinweise geben? Ich habe das Betriebssystem auf der VM-Maschine als uk-Region festgelegt und die zugrunde liegenden Daten in den Tabellen sowohl lokal als auch remote haben genau das gleiche Format. Ist etwas offensichtlich, das ich vermissen könnte?

+0

Sie könnten das [ISO 8601] (https://docs.microsoft.com/en-us/sql/t-sql/data-types/date-transact-sql) Format YYYY-MM-DD und dann verwenden Verwenden Sie die Funktion [FORMAT] (https://docs.microsoft.com/en-us/sql/t-sql/functions/format-transact-sql) zum Anzeigen von Zwecken. Ich weiß, dass dies wahrscheinlich etwas ist, das Sie vermeiden möchten, aber es vermeidet den Fehler vollständig. – scsimon

Antwort

0

der Wert 23/01/2014' ist für Vertragsdatum nicht gültig

Bitte dbcc useroptions laufen die Sprache und Datumsformat zu überprüfen. Das Datumsformat für SQL Server ist standardmäßig das US-Datumsformat MM/TT/JJ, sofern keine lokalisierte Version von SQL Server installiert wurde.

Sie könnten versuchen, das internationale Format YYYYMMDD zu verwenden, um die Datetime-Daten an SQL Server zu senden oder das Datum im Datumsformat zu übergeben, das auf dem SQL Server verwendet wird.

+0

Das Problem ist nicht mit der DB Ive überprüft und es wird nicht getroffen, seine clientseitige Validierung, die es verursacht. Aber es validiert das britische Datumsformat auf meinem Dev-Rechner, erst nachdem ich es nach Azure deployiert habe, denkt es, es sei ein US-Format. Ich benutze den globalize.js Validator und seine Einstellung auf en-GB. Muss meine Azure-Umgebung in Großbritannien lokalisiert werden? Seine gehostete in Westeuropa – user2347338

+0

'' seine clientseitige Validierung, die es verursacht '' meinst du, dass der Fehler von Client-Seite jquery Validator, nicht SQL-Datenbank zurückgegeben wird? –