VB or C#

I am new to Epicor and am getting mixed signals as to whether I should use VB or not. I am trying to use C# but am struggling - this would be easier if I use VB.
Will VB be deprecated? Does it not matter which language I use?

1 Like

Welcome Susan!

Do not be confused. VB is being deprecated by Epicor and Microsoft too. Post your C# questions here. There are also some good C# resources recommended by several on this group:

4 Likes

VB.Net is going into maintenance mode Microsoft: 'We Do Not Plan to Evolve Visual Basic as a Language' -- Visual Studio Magazine

Microsoft and I expect Epicor will not invest in it any more. I would use C#. There are lots of very helpful people here on the forum.

Brett

2 Likes

Welcome @SusanM, I was much more used to VB and only started learning C# last year. It has been very worthwhile, and worth investing some time in. The biggest challenge has been in learning to make it talk to Epicor, more than the language itself.

  • I got the syntax via the free SoloLearn app

  • and then built a (very) simple game from this free tutorial here which cemented the structure in my mind;

  • and then figured out how to debug by adding a messagebox using

this.PublishInfoMessage("whatever string you want", Ice.Common.BusinessObjectMessageType.Information, Ice.Bpm.InfoMessageDisplayMode.Individual,"","");

and there are literally dozens of really helpful people on this forum.

As others have said, VB is drifting away.

4 Likes

I’ll join the Chorus, VB is a no no stay away for everyone’s sake

Learn C# it will serve well anywhere you go

2 Likes

There really isn’t much difference, it shouldn’t take you too long to get used to c#

1 Like

Right. You will have to learn C#. Epicor’s BPMs are LINQ (same syntax as C#), so you will be forced to learn it if you want to write custom code BPMs.

1 Like

Oh - been there!!! :roll_eyes:

Google is your friend in this case… you can type a command you know in VBNet, and C# and search, and you will probably find a replacement right away.
Another source I used when (while still) learning is https://www.dotnetperls.com/ which has many great examples of code snippets.

Also, Epicor Web Access isn’t compatible with VB customization, if anyone uses it

1 Like

The answer is go the C# route. I am not advocate being a infrequent programmer.

C# isn’t really your problem. You will have far more of a battle trying to understand the Epicor object model, crappy code editor (no code completion!) and the chewed over and elderly infragistics form controls that the Windows client uses.

I know I might attract a tirade of abuse, but i could generate business logic far, far faster in Microsoft Access VBA 10 years ago! Full integrated code editor. Instant code run. Easy debug.

1 Like

While people might not have fond feelings for Access or VBA I think many people would agree the Epicor tooling and development environment is cumbersome. That is why you see the community trying to develop tools to make it easier.

You are being very generous with calling the environment as ‘cumbersome’, Evan! I would never be so kind. Form customisation, BAQ, BPM, dashboard they are utter %$%^%£$%$""!%

Go C#, ditto what everyone else is saying.
Oh and start digging into TypeScript too, that’s coming.

2 Likes

uggggh all we need!. yet another programming language! why?

I think programmers’ get bored with a particular logic problem and for some perverse reason decide to solve it by inventing another c/java like syntax which is sufficiently dissimilar to be annoying to the outside observer and at the same to be sufficiently similar to be considered a pointless exercise.

1 Like

Just count your blessings its Typescript and not javascript :rofl:

2 Likes

Because everyone is moving to the browser and C#, let alone VB, doesn’t run in the browser (not yet anyway). The .Net framework is in support mode and .Net 5 is the future of Microsoft because they want to be able to run cross-platform: Windows, MacOS, and Linux and the existing framework is too tied to Windows. Maintaining the .Net client is costly and difficult to deploy and customize. This is a movement away from that and not a change because somebody was bored.

BTW, Microsoft would not have had to create .Net if Sun/Oracle let Microsoft use Java without ridiculous licensing requirements.

2 Likes

And thank god they have those requirements. The last thing we need is a proliferation of that steaming pile of garbage that is Java.

2 Likes

VB or bust. But probably bust.

Wow, Blazor looks both fascinating and terrifying