C# Samples to X#

This forum is meant for examples of X# code.

User avatar
Eric Selje
Posts: 31
Joined: Sun Sep 22, 2019 3:16 pm

C# Samples to X#

Post by Eric Selje »

At SWFox you showed a trick to convert C# examples to X#. I should have written it down--what was it?

Thanks,

Eric
User avatar
robert
Posts: 4225
Joined: Fri Aug 21, 2015 10:57 am
Location: Netherlands

C# Samples to X#

Post by robert »

Eric,

- Download the X# language addin for ILSpy from this website
- Compile the C# code
- Open the assembly in ILSpy
- Set the language to X#

Robert
XSharp Development Team
The Netherlands
robert@xsharp.eu
User avatar
Eric Selje
Posts: 31
Joined: Sun Sep 22, 2019 3:16 pm

C# Samples to X#

Post by Eric Selje »

Ah, that's it thanks! I'll give it a try...
Jamal
Posts: 314
Joined: Mon Jul 03, 2017 7:02 pm

C# Samples to X#

Post by Jamal »

Link for ILSpy plugin DLL download page:

https://www.xsharp.eu/itm-downloads?fol ... %252FTools
Jamal
Posts: 314
Joined: Mon Jul 03, 2017 7:02 pm

C# Samples to X#

Post by Jamal »

Robert,

I downloaded the ILSpy project and compiled its solution, then copied the ILSpy.XSharpLanguage.Plugin.dll to ILSpy.exe directory.

When I run the ILSpy.exe, I am getting an error that it cannot find: ICSharpCode.AvalonEdit.
I have no issues using C# language options.

Using ILSpy.XSharpLanguage.Plugin.dll version 1.3.65534

Any ideas how to resolve the issue?

Error log:
System.IO.FileLoadException: Could not load file or assembly 'ICSharpCode.AvalonEdit, Version=6.0.253.0, Culture=neutral, PublicKeyToken=9cc39be672370310' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
File name: 'ICSharpCode.AvalonEdit, Version=6.0.253.0, Culture=neutral, PublicKeyToken=9cc39be672370310'
at ILSpy.XSharpLanguage.XSharpHighlightingTokenWriter..ctor(TokenWriter decoratedWriter, ISmartTextOutput textOutput, XSharpOptions settings)
at ILSpy.XSharpLanguage.XSharpLanguage.WriteCode(ITextOutput output, DecompilerSettings settings, SyntaxTree syntaxTree, IDecompilerTypeSystem typeSystem)
at ILSpy.XSharpLanguage.XSharpLanguage.DecompileMethod(IMethod methoddef, ITextOutput output, DecompilationOptions options)
at ICSharpCode.ILSpy.TextView.DecompilerTextView.DecompileNodes(DecompilationContext context, ITextOutput textOutput) in C:UsersJamalDownloadsILSpy-masterILSpyTextViewDecompilerTextView.cs:line 763
at ICSharpCode.ILSpy.TextView.DecompilerTextView.<>c__DisplayClass47_0.<DecompileAsync>b__0() in C:UsersJamalDownloadsILSpy-masterILSpyTextViewDecompilerTextView.cs:line 745
User avatar
lumberjack
Posts: 723
Joined: Fri Sep 25, 2015 3:11 pm

C# Samples to X#

Post by lumberjack »

Hi Jamal,
Jamal wrote: Using ILSpy.XSharpLanguage.Plugin.dll version 1.3.65534
Any ideas how to resolve the issue?
You need the correct version of the Language Plugin with each ILSpy version.
Karl-Heinz
Posts: 774
Joined: Wed May 17, 2017 8:50 am

C# Samples to X#

Post by Karl-Heinz »

Hi Jamal,

I´m using the 5.0 ilspy binaries dated 19 Sep, the dll from the ILSpy5.XSharpLanguage.zip and all works as expected.

https://github.com/icsharpcode/ILSpy/re ... 0.5124.zip

regards
Karl-Heinz
User avatar
Fabrice
Posts: 405
Joined: Thu Oct 08, 2015 7:47 am
Location: France

C# Samples to X#

Post by Fabrice »

Hi Jamal,

strangely the V5.0 is build against AvalonEdit 6.0.253...So, this is the one I use too
and V5.0.2 is using AvalonEdit 6.0.0... That's why the Plugin is crashing with this version.

HTH,
Fabrice
XSharp Development Team
fabrice(at)xsharp.eu
Jamal
Posts: 314
Joined: Mon Jul 03, 2017 7:02 pm

C# Samples to X#

Post by Jamal »

Hi Guys,

The ILSpy version mentioned by Karl-Heinz worked fine.

Thanks!
Jamal
Jamal
Posts: 314
Joined: Mon Jul 03, 2017 7:02 pm

C# Samples to X#

Post by Jamal »

Hi Fabrice,

Initially I added ILSpy as an extension from within VS 2019 and after some digging I found the cryptic folder name which VS added the extension in. Then I was looking for how to add the X# plugin from ILSpy, and was found. Then used the easier method of downloading the ILSpy master file and created the EXE, then Karl's post helped resolve the issue.

To make the long story short, I suggest you create within the X# zip file, a readme file on the proper procedure to make the X# plugin available in ILSpy and a link to the correct versions to use.
Post Reply