0x80040237 Doppelten Schlüssel kann nicht eingefügt werden.Können Primärschlüssel nach dem Löschen wiederverwendet werden?
Ich versuche, eine Import-Routine für MSCRM4.0 durch die CrmService zu schreiben. Dies war bis zu diesem Zeitpunkt erfolgreich. Anfangs ließ ich CRM nur die Primärschlüssel der Datensätze generieren. Mein Kunde wollte jedoch den Schlüssel einer benutzerdefinierten Entität auf vordefinierte Werte setzen können. Dadurch können wir möglicherweise wissen, welche Daten von unserem Installationsprogramm erstellt wurden und welche Daten nach der Installation erstellt wurden.
ich getestet, um sicherzustellen, dass die Guids eingestellt werden kann, wenn die CrmService.Update() -Methode aufrufen und die Ergebnisse zeigten, dass Datensätze mit unseren gewünschten Werten erstellt wurden. Ich lief meinen Import und alles schien erfolgreich zu sein. Beim Ändern meines Validierungscodes der Importdateien löschte ich die Daten (über die Crm-Browser-Schnittstelle) und versuchte erneut zu importieren. Leider löst es jetzt einen doppelten Schlüsselfehler aus.
Warum wird dieser Fehler ausgelöst wird? Löscht die Crm-Schnittstelle den Datensatz oder ist er noch vorhanden, aber vor den Augen des Benutzers verborgen? Gibt es eine Möglichkeit, sicherzustellen, dass ein gelöschter Datensatz dauerhaft gelöscht wird und die Guid frei wird? In einer Live-Umgebung hätten diese Guids nie existiert, aber während meiner Entwicklung brauche ich diese Importe, um erfolgreich zu sein.
By the way, ich habe dieses Problem in Anbetracht, bedeutet dies, dass statisch Einstellung Guids Praxis nicht empfohlen ist?