【问题标题】:Error message "No parameterless constructor defined for this object"错误消息“没有为此对象定义无参数构造函数”
【发布时间】:2018-08-04 10:50:56
【问题描述】:
var plugins = Activator.CreateInstance(types.First()) as IPluginFinder;

此代码在 nopcommerce 4.10 中停止并出现错误,这些是,在以前的版本中没有问题(4.00)

完整代码:

var types = typeFinder.FindClassesOfType<IPluginFinder>();

if (types.Count() == 1)
{
    var plugins = Activator.CreateInstance(types.First()) as IPluginFinder;
    var currentPlugin = plugins.GetPluginDescriptorBySystemName("misc.myplugin");
    if (currentPlugin == null || currentPlugin.Installed == false)
        return;
}

错误: 没有为此对象定义无参数构造函数

【问题讨论】:

    标签: c# nopcommerce


    【解决方案1】:

    在 4.10 版中,PluginFinder 类有一个新的构造函数,它需要一个类型为 IEventPublisher 的参数(参见 github commit)。您需要为该参数提供一个值。我不知道这个产品,但也许你会在发行说明或文档中找到有关它的信息。

    IEventPublisher evtPub = ...; //
    var plugins = Activator.CreateInstance(types.First(), evtPub) as IPluginFinder;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-30
      • 1970-01-01
      • 2022-08-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多