Build error: The type 'ActiproSoftware.ComponentModel.IKeyedLogicalTreeNode' is defined in an assemb

SyntaxEditor for Windows Forms Forum

Posted 10 years ago by Greg Bradburn
Version: 13.1.0312
Avatar

Greetings,

I have been tasked with trying to resolve a build issue in our Juris desktop application. I am stuck on the following errors:
Error 24 The type 'ActiproSoftware.ComponentModel.IKeyedLogicalTreeNode' is defined in an assembly that is not referenced. You must add a reference to assembly 'ActiproSoftware.Shared.Net20, Version=1.0.93.0, Culture=neutral, PublicKeyToken=36ff2196ab5654b9'. C:\tfs-wksp-2010\JurisSuite\Branches\v2.6.1\AppKit\Controls\Juris.Win.Queries\Queries\SqlDynamicSyntaxLanguage.cs 18 15 Juris.Win.Queries

Error 25 The type 'ActiproSoftware.ComponentModel.LogicalTreeNodeBase' is defined in an assembly that is not referenced. You must add a reference to assembly 'ActiproSoftware.Shared.Net20, Version=1.0.93.0, Culture=neutral, PublicKeyToken=36ff2196ab5654b9'. C:\tfs-wksp-2010\JurisSuite\Branches\v2.6.1\AppKit\Controls\Juris.Win.Queries\Queries\SqlDynamicSyntaxLanguage.cs 18 15 Juris.Win.Queries 

This error is occuring in an older branch on our build machine. Actipro SyntaxEditor-Full has been installed and licensed on this machine. Our current build (version 2.7) is building fine. The error is occuring on another branch, v2.6.1, where we are trying to generate a build with a patch for the release currently deployed in the field.

This is a .Net 4.0 application, being built in VS 2010. The project has the following Actipro references:
ActiproSoftware.Shared.Net20 (added in an attempt to resolve the build error)
ActiproSoftware.SyntaxEditor.Addons.DotNet.Net20
ActiproSoftware.SyntaxEditor.Addons.Web.Net20
ActiproSoftware.SyntaxEditor.Net20

The following line is causing the compiler error:
  public class SqlDynamicSyntaxLanguage : DynamicOutliningSyntaxLanguage

If I drill down into the ActiproSoftware.Shared.Net20 reference, I can see both IKeyedLogicalTreeNode and LogicalTreeNodeBase in the ObjectBrowser so I do not understand why it is complaining about the reference.

Our licensee name is Juris. I can supply the License Key upon request but don't want to put it into a public post.

Thanks in advance for any and all assistance.

Regards,

Greg Bradburn
Sr. Software Engineer
LexisNexis. - Business of Law Software Solutions
2000 Regency Pkwy, Suite 500
Cary, NC 27518 

Comments (2)

Posted 10 years ago by Actipro Software Support - Cleveland, OH, USA
Avatar

Hi Greg,

Please note that you also need to reference the WinUICore assembly, in addition to the Shared assembly when using SyntaxEditor v4.0.

But I don't think that is causing this particular problem at least.  The error you show only occurs if you are missing a reference, or are referencing a different version of the assembly than the one that is needed.  I suspect it's the latter in your case.  For instance, the SyntaxEditor is probably expecting some version of the Shared library that you aren't supplying.

Note that if you have to support two versions of our products, I would recommend that you don't install our assemblies to the GAC.  Keep all the compatible SyntaxEditor and Shared/WinUICore assemblies together in a folder that perhaps you keep in your source control.  Sometimes if you have assemblies in the GAC, they will get pulled by .NET instead of the version you really are referencing.  That's why I recommend not using the GAC in that scenario where you have multiple versions.


Actipro Software Support

Posted 10 years ago by Greg Bradburn
Avatar

Thanks for the prompt reply. I found that Adding the assembly you mentioned, as well as removing and readding all the Actipro references fixed the problem. Not sure why I needed to remove and readd the references but I have seen this with some of the other 3rd party controls we use as well.

The latest build of this product (v24.1.0) was released 1 month ago, which was after the last post in this thread.

Add Comment

Please log in to a validated account to post comments.