Wow, I have received an email from JetBrain that ReSharper 3.0 has been released. It fully supports C# and VB.NET now and more, we all are waiting for...
Go and grab it.. Download
We're pleased to announce the release of ReSharper 3.0.
This release is spearheaded by a major expansion into new languages, with full-featured support for Visual Basic .NET, XML and XAML, backed by comprehensive cross-language functionality. It also brings a host of new productivity-enhancing features such as a more in-depth code analysis for C#, a superior unit testing solution, efficient handling of to-do lists, plus new navigation and search commands.
**** Unrivalled Code Analysis for C# ****
ReSharper's code analysis is taking a major step forward. In addition to detecting new warnings and errors on-the-fly, ReSharper offers code suggestions. This feature gives insight into your code by offering intelligent analysis of code, including actual and potential errors as well as questionable code design - all while you type.
**** Multiple Productivity Enhancers ****
Productivity is at the heart of all our development. That's why version 3.0 includes multiple productivity enhancers across all our covered languages. The new features include "Go to Symbol" navigation, Unit Test Explorer (a totally reworked Unit Test Runner), a smart To-do list for keeping track of all your to-do notes solution-wide (even in closed files), and more.
**** Full-Featured Visual Basic .NET Support ****
With version 3.0, you'll get full coverage of VB.NET, with multiple features complementing and extending those provided by Microsoft Visual Studio. Enjoy a truly enhanced Visual Studio experience thanks to quick navigation and search, all the major automated code refactorings, full-fledged code assistance, code completion & generation, code templates, context actions, and more.
**** Cross-Language Functionality Between C# and VB ****
ReSharper ensures interoperability in working with mixed C# and Visual Basic projects: usage search, refactorings, quick-fixes and context actions take into account all code written in either language.
**** XML and XAML support ****
The wait is over. ReSharper 3.0 now offers XML and XAML support.
XML features include type completion, various ways to navigate between tags, navigation to referenced types, basic code assistance, and live templates support.
XAML features include XML editing in XAML code, all three types of ReSharper's code completion, several refactorings, and on-the-fly error, syntax and semantic analysis.

System.Random class SDK indicates that Pseudo-random numbers are chosen with equal probability from a finite set of numbers. The chosen numbers are not completely random because a definite mathematical algorithm is used to select them, but they are sufficiently random for practical purposes. The random number generation starts from a seed value. If the same seed is used repeatedly, the same series of numbers is generated.
for(int index=0; index<10; index++)
{ int seed = (int) System.DateTime.Now.Ticks;
System.Random random = new Random(seed);
System.Diagnostics.Debug.WriteLine(random.NextDouble());
}
The above code shows that it generates same "random" numbers multiple times, because of .NET code execution is really fast and returns same
System.DateTime.Now.Ticks values for multiple instructions within a loop.
To resolve this issue, we could add delay using Thread.Sleep function call, which result in application performance impact:
for(int index=0; index<10; index++)
{ int seed = (int) System.DateTime.Now.Ticks;
System.Random random = new Random(seed);
System.Diagnostics.Debug.WriteLine(random.NextDouble());
System.Threading.Thread.Sleep(10);
}
System.GUID has a very low probability of being duplicated and provides more unique seed values.
for(int index=0; index<10; index++)
{ string guid = System.Guid.NewGuid().ToString("N").Replace("a", "").Replace("b", "").Replace("c", "").Replace("d", "").Replace("e", "").Replace("f", ""); System.Diagnostics.Debug.WriteLine(guid); //Random very large number/string;
int seed = int.Parse(guid.Substring(0, 5));
System.Random random = new Random(seed);
System.Diagnostics.Debug.WriteLine(random.NextDouble());
}
The best solution will be using Cryptography.RandomNumberGenerator class, which generators cryptographically strong random values as follow:
public const string ALPHA = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
public const string NUMERIC = "0123456789";
public const string ALPHA_NUMERIC = ALPHA + NUMERIC;
//
// Creates a random password
//
public static string GetRandomNumber(int length, string characterSet)
{ string randomData = "";
int position = 0;
byte[] data = new byte[length];
int characterSetLength = characterSet.Length;
System.Security.Cryptography.RandomNumberGenerator random = System.Security.Cryptography.RandomNumberGenerator.Create();
random.GetBytes(data);
for (int index = 0; (index < length); index++)
{ position = data[index];
position = (position % characterSetLength);
randomData = (randomData + characterSet.Substring(position, 1));
}
return randomData;
}
// To execute the function, Call:
// GetRandomNumber(5, ALPHA_NUMERIC);
Today, I am have tried several times to reply one of reader's comment. I have filled all information and pressed submit button. The same page returns without comment posted. I have done so many times, but no luck :(
Is it any software defect(bug) with GeeksWithBlogs.net website? Have you experience the same problem?