techalerts
 

ConfigurationSettings.AppSettings["SQLConnString"]; -- Become Obsolete in .NET 2.0

Recently when I tried to create a data access component for my web application in .NET 2.0 I found that ConfigurationSettings class as become obsolete. In .Net 2.0 ConfigurationManager class that replaces ConfigurationSettings.

“System.Configuration.ConfigurationSettings.AppSettings["SQLConnString"]; this method is obsolete, it has been replaced by System.Configuration!System.Configuration.ConfigurationManager.AppSettings"

The System.Configuration.ConfigurationSettings.AppSettings["SQLConnString"];
Will give your warning that this “this method was obsolete”. What to do in order to use ConfigurationManager class? System.Configuration.dll - ensure you add a reference to this assembly. In .NET 2.0 all configuration functionality is in this separate assembly now.

 
 
 

Calling the Open With dialog box from your application, using C#

This article is to introduce shell programming with C# for beginners in .NET. The Shell namespace organizes the file system and other objects managed by the Shell into a single tree-structured hierarchy. Conceptually, the Shell namespace is essentially a larger and more inclusive version of the file system. The Shell namespace objects include file system folders and files, along with "virtual" objects, such as the Recycle Bin and Printers folders. One of the primary responsibilities of the Shell is managing and providing access to the wide variety of objects that make up the system. Here, I have created a sample for demonstrating how to call the Open with dialog box in your Windows system.

Here in this article, I have developed a simple image viewer application to demonstrate the Open with dialog box in Windows, using C#. It’s really hard to explain the Shell concepts. This application is developed using Microsoft Visual C# Express Edition.
A struct-declaration consists of an optional set of attributes, followed by an optional set of struct-modifiers, followed by the keyword struct and an identifier that names the struct, followed by an optional struct-interfaces specification, followed by a struct-body, optionally followed by a semicolon. And the Serializable keyword indicates that a class can be serialized. This class cannot be inherited.

[Serializable]
public struct ShellExecuteInfo
{
public int Size;
public uint Mask;
public IntPtr hwnd;
public string Verb;
public string File;
public string Parameters;
public string Directory;
public uint Show;
public IntPtr InstApp;
public IntPtr IDList;
public string Class;
public IntPtr hkeyClass;
public uint HotKey;
public IntPtr Icon;
public IntPtr Monitor;
}
// Code For OpenWithDialog Box
[DllImport("shell32.dll", SetLastError = true)]
extern public static bool
ShellExecuteEx(ref ShellExecuteInfo lpExecInfo);
public const uint SW_NORMAL = 1;
static void OpenAs(string file)
{
ShellExecuteInfo sei = new ShellExecuteInfo();
sei.Size = Marshal.SizeOf(sei);
sei.Verb = "openas";
sei.File = file;
sei.Show = SW_NORMAL;
if (!ShellExecuteEx(ref sei))
throw new System.ComponentModel.Win32Exception();
}

 
 

custom number formatting in C#

One of the painful things about good old ASP was string formatting; VBScript simply didn't have anything useful. C# do, but MSDN doesn't provide a quick reference to the formatting options. So here's a quick reference. The C# equivalent for sprintf is String.Format, which takes a format string and the arguments. It returns a string, and because you're not passing in a buffer there's no chance of a buffer overflow.

string outputString = String.Format("At loop position {0}.\n", i);

The ToString method can accept a string parameter which tells the object how to format itself. In the call to String.Format , the formatting string is passed after the position, for example, "{0:##}". The text inside the curly braces is {argumentIndex[,alignment][:formatString]}. If alignment is positive, the text is right-padding to fill the specified field length, if it's negative, it's left-padded.custom number formatting

specifier type format output
(double 1234.56)
0 zero placeholder {0:00.000} 1234.560
# digit placeholder {0:#.##} 1234.56
. decimal point placeholder {0:0.0} 1234.6
, thousand separator {0:0,0} 1,235
% percentage {0:0%} 123456%


Some of the code i tried...

//decimal stingDate = Convert.ToDecimal( "79798797987.96999797696");
//string stgDate = String.Format("{0:$#,##0.00;($#,##0.00);Nothing}", stingDate);
//string stingDate = String.Format("{0:$#,##0.00;($#,##0.00);Nothing}", str);
//MessageBox.Show(stgDate);

string stingDat = System.DateTime.Today.Date.ToShortDateString();
int day = DateTime.Parse(stingDat.ToString()).Day;
MessageBox.Show(day.ToString());
int month = DateTime.Parse(stingDat.ToString()).Month;
MessageBox.Show(month.ToString());
int year = DateTime.Parse(stingDat.ToString()).Year;
MessageBox.Show(year.ToString());
DateTime curSysDate = new DateTime(year, month, day);
MessageBox.Show(curSysDate.ToShortDateString().ToString());

 
>> for more reach out my blog >>