C#: Basic Combinatorics
Basic combinatorics in C# is a straight forward task for relatively small numbers like (100!). This is a helper class I wrote when I was asked to write an online lottery system.
Keep in mind though, that for bigger numbers (above 100!) you will need Arbitrary-precision arithmetic.
Here is the code and please, if someone knows a faster way or has some suggestions let me now!
Export MS SQL Database schema with C#
A few days ago I was searching for a way to export MS SQL schema of all databases of a server for backup and migration purposes. Although I found some tools, what I needed was a way to get stored procedures, functions, views, triggers and everything even if it was encrypted.
C#: Calculating all Greek Public Holidays for any given year
After calculating the Greek Orthodox Easter, it was time for the public holidays calculation. With the Easter calculation ready, it proved to be much easier than expected!
C#: Calculating Orthodox and Catholic Easter
Some time ago I was called about an online calendar for a company’s portal. The need was to inform employees about public holidays for the requested year. In Greece, some of those holidays are static meaning they occur the exact same date each year, but some are based on the Orthodox Easter so they move from date to date. There are a lot of online services that can return these information, but I thought I should give it a go and try writing the Orthodox Easter calculation in C#. Saying that, I found the algorithm online and since I was there I also found the Catholic Easter algorithm.
SQL Server: Using RANK to display PERCENT (percentage of relevance)
So you end up with a query l that returns what you searched for and with SQL Server Full Text Search engine, and with it the RANK column! How do you end up with a percentage of relevance for your users to enjoy?
C#: Getting a user IP behind a proxy (HTTP_X_FORWARDED_FOR)
Did you know that HTTP_X_FORWARDED_FOR can return multiple IPs? According to http://en.wikipedia.org/wiki/X-Forwarded-For the format is:
X-Forwarded-For: client, proxy1, proxy2