我有一个.net框架类库项目,它完全可以与.net框架项目一起工作,现在我还需要在.net核心应用程序中引用它。因此,我试图创建一个新的.net标准项目,并将所有.cs文件从现有项目复制到该项目中。并开始修复编译错误。我修了很多,但还是有几个。
_rabbitBus = RabbitHutch.CreateBus(
ConfigurationManager.ConnectionStrings[queueName].ConnectionString,
serviceRegister => serviceRegister.Register<ISerializer>(
serviceProvider => new JsonSerializer(new TypeNameSerializer())
)
);我得到下面的错误与上面提到的代码。
CS0246无法找到类型或命名空间名称'TypeNameSerializer‘(您是缺少使用指令还是程序集引用?)
那么如何解决这个问题呢?
注意:我已经用这个代码new JsonSerializer(new Newtonsoft.Json.JsonSerializerSettings())修复了编译错误b,但是我不知道它是否正确,所以请指导我如何解决这个问题。
发布于 2020-07-10 08:43:35
看起来,EasyNetQ的不同版本正在.NET框架和.NET核心中使用。
最新版本的EasyNetQ没有任何名称为TypeNameSerializer的类,这就是为什么您要得到这个错误。
而且,在最新版本的JsonSerializer中,类EasyNetQ没有接受TypeNameSerializer作为参数的构造函数。
您可以参考EasyNetQ的Git和JsonSerializer类源代码。
为了使用EasyNetQ,您需要在.NET核心中使用与.NET框架项目中使用的相同版本的TypeNameSerializer。
https://stackoverflow.com/questions/62826873
复制相似问题