0

修復できないエラーがあります。

パラメータとしてGUIDを取り、そのエンティティを別のエンティティに「複製」するアプリケーションを開発しています。(JavaScript を使用してこれを実行できることはわかっています。問題は、CRM サーバーに必要なロールアップがなく、更新できないことです)。

私のコンピューターでデバッグしているときはプロジェクトは正常に動作しますが、運用サーバーに展開するとクラッシュします。私の最初の推測では、認証の問題だったのですが、IIS の認証ルールを変更し、アプリを使用している Windows ユーザーを偽装しましたが、いずれにしても機能しませんでした。

スローされるエラー: -2146233088 System.Collections.ListDictionaryInternal この要求の処理中にエラーが発生しました。C:\Wip\Projects\Dev\CRMINTEGRATION\CRMINTEGRATION.DataAccess\Entities\CRMOrdenDeCompra の Ambiente.DataAccess.Entities.CRMOrdenDeCompra.CreateOrdenDeCompra (Guid guidSolicitudDeCompra) で Microsoft.Xrm.Sdk.Client.OrganizationServiceContext.SaveChanges (SaveChangesOptions オプション) で。 c:\Wip\Projects\Dev\CRMINTEGRATION\CRMINTEGRATION.WebApp\Controllers\RequestController.cs:line 22 の CRMINTEGRATION.WebApp.Controllers.RequestController.CreateOrdenDeCompra(String guid) の cs:line 42

エンティティを挿入するコード:

        var solicituddecompraContext = new CRMSolicitudDeCompra();
        var solicituddecompra = new new_solicituddecompra();
        solicituddecompra = context.new_solicituddecompraSet.FirstOrDefault(q => q.new_solicituddecompraId == parameterGuid);

        new_ordendecompra ordendecompra = new new_ordendecompra();
        ordendecompra.new_ordendecompraId = Guid.NewGuid();
        ordendecompra.new_name = string.Format(solicituddecompra.new_name + " ({0})", DateTime.Now.ToString("dd/MM/yyyy hh:mm:ss"));
        ordendecompra.new_FechaRequirida = solicituddecompra.new_Fecharequerida;
        ordendecompra.new_Tipodesolicitud = solicituddecompra.new_Tipodesolicitud;
        ordendecompra.new_Observaciones = solicituddecompra.new_observaciones;
        ordendecompra.new_Numerodesolicitud = solicituddecompra.new_SolicitudNo;

        var detallerequisicion = CRMDetalleRequisicion.getDetalleRequisicion(context, guidSolicitudDeCompra);

        context.AddObject(ordendecompra);
        context.SaveChanges();

crmsvcutil.exe を使用して、CRM の XRM クラスを生成しました。したがって、コードに表示されるクラスの名前は、実際には CRM のエンティティの名前です。上記のすべては、メソッド entidad.SaveChanges() に到達するまで正常に機能します。

Ps。コードでわかるように、英語は私の母国語ではありません。間違いがあれば遠慮なく訂正してください。私はそれを感謝します:)。

4

0 に答える 0