Friday, 18 April 2014

Generate Random Numbers in C#

private static int seed = Environment.TickCount;

// Generate random number tick
private static ThreadLocal<Random> randomWrapper =
            new ThreadLocal<Random>(() => new Random(Interlocked.Increment(ref seed)));
           
randomWrapper.Value.Next(additionMinValue, additionMaxValue);


Tuesday, 15 April 2014

Reading repetitive XML to memory using C#

Sample XML Document:
<Elements>
    <Element>
        <Name>N1</Name>
        <Type>T1</Type>
        <Color>C1</Color>
    </Element>
    <Element>
        <Name>N2</Name>
        <Type>T2</Type>
        <Color>C2</Color>
    </Element>
    <Element>
        <Name>N3</Name>
        <Type>T3</Type>
        <Color>C3</Color>
    </Element>
</Elements>


Sample C# Code:
XmlDocument myDoc = new XmlDocument()
myDoc.Load(XML_File_Path_Name);

foreach(XmlElement elem in myDoc.SelectNodes("Elements/Element"))
{
    XmlNode nodeName = elem.SelectSingleNode("Name/text()");
    XmlNode nodeType = elem.SelectSingleNode("Type/text()");
    XmlNode nodeColor = elem.SelectSingleNode("Color/text()");

    string name = nodeName!=null ? nodeName.Value : String.Empty;
    string type = nodeType!=null ? nodeType.Value : String.Empty;
    string color = nodeColor!=null ? nodeColor.Value : String.Empty;



Tuesday, 8 April 2014

Enable remote MySQL connection


Put this as root:

GRANT ALL PRIVILEGES ON *.* TO  'USERNAME'@'IP'  IDENTIFIED  BY  'PASSWORD';

where IP is the IP you want to allow acess and USERNAME is the user you use to connect
If you want to allow access from any IP just put % instead of your IP

and then you only have to put

FLUSH PRIVILEGES

or restart mysql server and that's it

SQL: Generate a range of numbers

SELECT ones.n + 10*tens.n + 100*hundreds.n + 1000*thousands.n FROM       (VALUES(0),(1),(2),(3),(4),(5),(6),(7),(8),(9)) ones(n),      (VALU...