繁体   English   中英

用于查找值的Dynamics 365插件

[英]Dynamics 365 Plugin for lookup values

错误:0x80040203无效的参数

我是Dynamics的新手。 在准备通过插件将外部数据源的查找值输入Dynamics时,我想首先使用此代码对硬编码值进行测试。 但是,在注册了程序集,数据提供程序和数据源之后,我创建了一个动态的虚拟实体,并将其链接到表单上的字段(查找类型)。 发布后,单击该字段将引发错误-无效参数

using System;
using Microsoft.Xrm.Sdk;

namespace Hardcoded.Names.Plugin
{
public class NamesLookupPlugin : IPlugin
{
    public void Execute(IServiceProvider serviceProvider)
    {
        var context = (IPluginExecutionContext)serviceProvider.GetService(typeof(IPluginExecutionContext));
        var serviceFactory = (IOrganizationServiceFactory)serviceProvider.GetService(typeof(IOrganizationServiceFactory));
        serviceFactory.CreateOrganizationService(context.UserId);
        var tracingService = (ITracingService)serviceProvider.GetService(typeof(ITracingService));

        try
        {
            var results = new EntityCollection();
            var itemOne = new Entity
            {
                ["ID"] = Guid.NewGuid(),
                ["Name"] = "First Item"
            };

            var itemTwo = new Entity()
            {
                ["ID"] = Guid.NewGuid(),
                ["Name"] = "Second Item"
            };
            results.Entities.Add(itemOne);
            results.Entities.Add(itemTwo);

            context.OutputParameters["BusinessEntityCollection"] = results;
        }
        catch (Exception e)
        {
            tracingService.Trace($"{e.Message} {e.StackTrace}");
            if (e.InnerException != null)
                tracingService.Trace($"{e.InnerException.Message} {e.InnerException.StackTrace}");

            throw new InvalidPluginExecutionException(e.Message);
        }
     }
   }
}

我希望在查找字段中看到“第一项”和“第二项”可选。

您正在插入插件中的RetrieveMultiple消息。 还有一条Retrieve消息(通过EntityReference获取单个记录)-您还需要为该实体钩上该消息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM