当我只有跟踪器来测试执行时,插件在 D365 v9 Online 上失败

Plugin Failing on D365 v9 Online when I just have tracers to test execution

我在 VS 2017 中构建了一个自定义 wf 程序集。

以下是我的代码。没有红色波浪线,注册无误:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Activities;
using Microsoft.Xrm.Sdk;
using Microsoft.Xrm.Sdk.Workflow;
using Microsoft.Xrm.Sdk.Query;

namespace CustomerAsset
{
    public partial class CustomerAsset : CodeActivity
    {

        //public InArgument<EntityReference> CustomerAsset { get; set; }
        protected override void Execute(CodeActivityContext executionContext)
        {

            //Create the tracing service
            ITracingService tracer= executionContext.GetExtension<ITracingService>();
            tracer.Trace("Begin Plugin Execution");
            //Create the context
            IWorkflowContext context = executionContext.GetExtension<IWorkflowContext>();
            IOrganizationServiceFactory serviceFactory = executionContext.GetExtension<IOrganizationServiceFactory>();
            IOrganizationService service = serviceFactory.CreateOrganizationService(context.UserId);

            try
            {
                //DO WORK HERE
                Entity entity = (Entity)context.InputParameters["Target"];

                var targetCustAssOpHrsId = entity.Id;
                tracer.Trace(entity.LogicalName);
                tracer.Trace(targetCustAssOpHrsId.ToString());

                QueryExpression qe = new QueryExpression();
            }
            catch(Exception ex)
            {
                throw new InvalidPluginExecutionException("error in CustomerAsset custom workflow assembly");
                //throw new InvalidPluginExecutionException(ex);
            }
        }
    }
}

以下是我已经尝试过的:

还有其他陷阱吗?我使用的是开发指南而不是以前的 SDK,所以这对我来说有点新。

从代码中可以看出。我只是在追踪。我在实例化跟踪器后进行了跟踪写入,但我什至没有做到这一点。

另请注意,我运行此按需测试执行。

您可能需要检查插件跟踪设置是否设置为 "All"。

(设置 > 管理 > 系统设置 > 自定义)

您也可以尝试在代码中抛出异常以查看是否注册。

更新D365中的Plugin Assembly后,检查解决方案确保ModifiedOn已经改变。