How to send push notifications in C#

Push-notifications-in C-SharpIn today’s article, we’ll look at how to push notifications out of C# onto smartphones or other devices. It does not matter if it is an Android or an Apple / iOS device. But when do you need such functionality?
For example, I run a few niche sites (affiliate websites) with which I earn monthly through affiliate programs. However, the revenue reports have to be picked up proactively in almost all affiliate programs. So I wrote a small C# client, which regularly downloads the reports and sends me a push notification for new sales. That’s just one of many uses and I’m sure you’ll think of a few more. But now back to the topic.
Selection of push platform
For a quick and easy integration of the push functionality in C#, […]

Default field lengths for address fields in databases

Standard lengths for address fields in databasesToday, we will dive into some more theoretical stuff. The topic of this article will be field lengths of database fields for addresses. For every second database I create, I am faced with the same problem: How long / “big” do I actually make the database fields for addresses? So fields, such as first name, surname, street, e-mail address, etc.
So far I have oriented myself to given requirements or old databases. But now I wanted to work up the topic once for all right. So the question is: Is there actually a standard for address field lengths?
Looking for standards for address field lengths
A search for “address field lengths for databases” spits a huge amount of hits. Unfortunately there are only opinions and […]

How to generate Swiss QR Code in C# and VBA

Swiss QR Code in C-Sharp and VBAToday, we are looking into the field of business computer science. Since end of April, SIX has released the specification for the new Swiss QR Code according to ISO 20022. The Swiss QR Code is an integral part of the new Swiss deposit slip, the so-called QR invoice, which shall be implemented by all companies by mid-2018 at the latest. The Swiss QR code is placed in the so-called “number part with QR code” of the QR invoice.
In the following, we will discuss how the Swiss QR code can be generated using C # or VBA. To do this, we use the free QRCoder library, which I developed almost 4 years ago and to which recently added the Swiss QR Code. One more thing […]

.NET Core – gdiplus.dll not found in Linux

A few days ago there was an issue raised in my QrCoder project. It was reported that the code would not run under Linux, as the following error message would occur:

Unhandled Exception: System.TypeInitializationException: The type initializer for ‘System.Drawing.KnownColors’ threw an exception.
—> System.TypeInitializationException: The type initializer for ‘System.Drawing.GDIPlus’ threw an exception.
—> System.DllNotFoundException: Unable to load DLL ‘gdiplus.dll’: The specified module could not be found.
(Exception from HRESULT: 0x8007007E)
at System.Drawing.GDIPlus.GdiplusStartup(UInt64& token, GdiplusStartupInput& input,
[…]

However the error message had its origin not in my QrCoder, but in the interplay of the .NET core framework with the GDI Plus library. The .NET Core Framework tries to access “gdiplus.dll” when accessing “System.Drawing.GDIPlus”, which is simply not available on Linux.
First solution approach
First, ensure that GDI+ is installed at all. This can be done with the following shell command:

sudo apt-get install libgdiplus

If libgdiplus is installed, however, another important step is missing …
Link libgdiplus for .NET Core
Because the […]

How to read client hostname in PHP

How to read clienthostname in PHPThe following article is about how to use PHP to read out the client hostname, which is the computer name of a visitor. If you search in the internet, you will find out soon, that the whole thing is not so trivial. Either one gets simply wrong answers or one gets solutions, not in PHP but for example implemented in VBScript or it is said that it is not possible at all. But since it works, I would like to show you how to read the computer name, now.
But before we look at the solution, let’s take a quick look at the suggested solutions on the internet and explain why they are wrong or not recommended.
How to not read the client hostname in PHP
Often suggested […]