1. Richard Torcasio
  2. SnapDevelop
  3. Wednesday, 6 May 2020 18:30 PM UTC

I just started a new project in SnapDevelop. I also tried to install a nuget package and got the error:

 

Package itext7 7.0.3 is not compatible with netstandard2.0 (.NETStandard,Version=v2.0). Package itext7 7.0.3 supports: net40 (.NETFramework,Version=v4.0)

 

I don't see where to change the .net version of my project, like in Visual Studio.

 

Thanks in advance and hope everyone is health and save!

Rich

Accepted Answer
Armeen Mazda @Appeon Accepted Answer Pending Moderation
  1. Wednesday, 6 May 2020 19:07 PM UTC
  2. SnapDevelop
  3. # Permalink

I don't recommend you use anything that is not compatible with .NET Core framework.  Microsoft is going to force everybody to switch over to .NET Core in the next version: https://devblogs.microsoft.com/dotnet/introducing-net-5/  So basically, if you don't use .NET Core your brand new project may be obsolete even before you finish it.

The other thing is I don't recommend using iText unless you purchased a commercial license.  Their open source version is AGPL, which basically means you have to open source your own project.

Here are some popular commercial PDF products that support .NET Core:

https://www.syncfusion.com/pdf-framework/net-core/pdf-library

https://products.aspose.com/pdf

If you are willing to use an older version of iText, there is a fork of it that supports .NET Core and is licensed under LGPL if you don't want to spend money:

https://github.com/VahidN/iTextSharp.LGPLv2.Core

If you want another free option, there is also a port of PDFBox that supports .NET Core and is licensed under Apache 2.0:

https://www.nuget.org/packages/PdfPig/

Comment
  1. Armeen Mazda @Appeon
  2. Thursday, 13 January 2022 00:20 AM UTC
Hi David, SnapDevelop version 2022 that will released middle of this year will support .NET 6. As far as standard Windows install, the projects you create with SnapDevelop are server side so there should be no need to install .NET 6 to each user's machine.
  1. Helpful
  1. David Peace (Powersoft)
  2. Thursday, 13 January 2022 09:16 AM UTC
Armeen

Thanks for the info.



Just so that you know, we always push the boundaries and we are happily developing Dot Net Class DLLs and importing them into PB for Client Server PC deployment. If I can avoid using VS I always will! Quite often the DLLs supplied by 3rd parties have data entities not supported by PB so we just wrap them and change the data entities to fit the problem. Snapdevelop is great for this sort of quick fix.



We have some Dot Net DLLs used in our Hotel Property Management system and these are the ones causing me issues. We have 100s of deployed clients. However, the blame lands squarely with Microsoft in my opinion. Windows comes with Dot Net 4.n by default. So anyone writing with Dot Net 5.n as the target will have the same problem and the installer for Dot Net is always massive!



My main problem is currently with Dot Net SMTP stuff being rejected by MS 365 because of TLS1.2 not being supported in Dot Net SMTP by default. Apparently there are some registry hacks that fix it but it's a pretty appalling state of affairs. I’m also looking at a longer term solution so targeting Dot Net 5 and above (preferably Dot Net6 for LTS) makes sense as I can see that Dot 4.n will die eventually! You know what would be a great help, would be to have some native SMTP commands on PowerScript ;-)



Once again Thanks for putting together some great tools.



David
  1. Helpful 1
  1. Armeen Mazda @Appeon
  2. Thursday, 13 January 2022 17:19 PM UTC
Thanks for that context. If you have the source code of these .NET DLLs, there is option to compile your .NET Core project as "self-contained", which includes both your application and .NET Core binaries. https://docs.microsoft.com/en-us/dotnet/core/deploying/deploy-with-vs?tabs=vs156
  1. Helpful 1
There are no comments made yet.
Govinda Lopez @Appeon Accepted Answer Pending Moderation
  1. Wednesday, 6 May 2020 19:09 PM UTC
  2. SnapDevelop
  3. # 1

Hi Richard,

 

You can change the Target Framework by right-clicking the Project, in SnapDevelop, and selecting "Properties". You will see an option marked as "Target Framework". I believe this is what you are looking for.

 

 

Regards,

Comment
  1. Richard Torcasio
  2. Wednesday, 6 May 2020 20:17 PM UTC
Hi Govinda,



It will but not up to version 4.
  1. Helpful
There are no comments made yet.
Richard Torcasio Accepted Answer Pending Moderation
  1. Wednesday, 6 May 2020 20:16 PM UTC
  2. SnapDevelop
  3. # 2

Thanks for the quick responses!

Comment
  1. Armeen Mazda @Appeon
  2. Wednesday, 6 May 2020 21:38 PM UTC
Hi Richard, Please post this as a separate question so it can get adequate visibility and you get a good response. Thanks.
  1. Helpful
There are no comments made yet.
  • Page :
  • 1


There are no replies made for this question yet.
However, you are not allowed to reply to this question.