Tuesday, December 30, 2008
configure msoutlook & outlookexpress
http://mail.google.com/support/bin/answer.py?answer=12103
http://mail.google.com/support/bin/answer.py?answer=12103
http://mail.google.com/support/bin/answer.py?answer=76147
http://mail.google.com/support/bin/answer.py?answer=13276
Friday, December 12, 2008
water mark or background fixed and content scroll
body
{
background-attachment:fixed;
background-image:url("img/Sunset.jpg");
background-repeat:no-repeat;
}
/* now link the stylesheet to the page in Head tag by using*/
link href ="stylesheet.css" type ="text/css" rel="stylesheet" /
/* now write the content in the form tag of page source code*/
sqlserver interwiew question blog spot
Thursday, December 11, 2008
Ajax In Javascript
{
var sServerName = new String(document.location);
if (window.XMLHttpRequest) {
var XML = new XMLHttpRequest();
}
else if (window.ActiveXObject) {
var XML = new ActiveXObject("Microsoft.XMLHTTP");
}
var URL = "CheckLoginAjax.aspx?UserName=" + document.getElementById('login2').value + "&Password=" + document.getElementById('pass').value;
Type = "Type=";
XML.open("POST", URL, false);
XML.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
XML.send(Type);
var s = XML.responseText;
if (s == "I")
{
alert('Login Id does not exists.');
return false;
}
if (s == "IV")
{
alert('Your Account is deactive');
return false;
}
else if (s == "U")
{
window.location = "UserProfile.aspx";
return false;
}
else if (s == "F")
{
window.location = "FacultyProfile.aspx";
return false;
}
else if(s=="A")
{
getAdmin();
return false;
}
}
The Configuration API in .NET 2.0
AppSettings and Connection Strings
Two common tasks in ASP.NET development are reading application setting strings and connection strings from the configuration file. In .NET 2.0 these settings reside in the <appSettings> and <connectionStrings> respectively. A sample web.config file for an ASP.NET site might look like the following.
<?xml version="1.0"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
<appSettings>
<add key="message" value="Hello World!" />
</appSettings>
<connectionStrings>
<add name="AdventureWorks" connectionString="..."/>
<add name="pubs" connectionString="..."/>
</connectionStrings>
<system.web>
<compilation debug="true" />
<authentication mode="Windows"/>
<identity impersonate="true"/>
</system.web>
</configuration>
The configuration API for ASP.NET developers begins with the WebConfigurationManager class in the System.Web.Configuration namespace. The WebConfigurationManager includes static (shared) properties to fetch application settings and connection string. For example, to read the “message” appSetting from the web.config we could use the following code:
string message;
message = WebConfigurationManager.AppSettings["message"];
Similarly, if we want to grab the second connection string, the connection with the name of “pubs”, we could use the following code:
string connectionString =
WebConfigurationManager.ConnectionStrings["pubs"].ConnectionString;
The configuration API makes easy work of reading any setting in a configuration file using the GetSection static method. GetSection takes an XPath expression to indicate the section you want to get, and you can coerce the resulting object reference into a strongly typed reference for built-in section types. For instance, there is an AuthorizationSection class to manipulate the settings inside the <authorization> section, and a PagesSection class to manipulate the settings in the <pages> section.
If we want to write out the value of the impersonate attribute in the <identity> section of web.config, we could use the following:
protected void readImpersonationButton_Click(object sender, EventArgs e)
{
// note: currently broken in BETA2, works in post BETA2 builds.
// in BETA2 GetSection returns a wrapper
// that will not cast to IdentitySection
IdentitySection section;
section = WebConfigurationManager.GetSection("system.web/identity")
as IdentitySection;
if (section != null)
{
WriteMessage("Impersonate = " + section.Impersonate);
}
}
private void WriteMessage(string message)
{
// this method assumes a PlaceHolder control
// on the web form with the ID of messagePlaceHolder
HtmlGenericControl generic = new HtmlGenericControl();
generic.InnerHtml = message;
messagePlaceHolder.Controls.Add(generic);
}
Modify Configuration Files
The WebConfigurationManager class also allows us to open a web configuration for update using the static method OpenWebConfiguration. We can open a configuration file inside of our application by passing just a relative path. We can also read configuration files in other applications by passing the IIS sitename and a virtual directory. It’s even possible to open application configuration files on another machine.
If we want to toggle the debug attribute in the <compilation>section of the web.config for the current application from true to false and back again, we could use the following code in the event handler for a button click event:
protected void toggleDebugButton_Click(object sender, EventArgs e)
{
Configuration config;
config = WebConfigurationManager.OpenWebConfiguration("~");
CompilationSection compilation;
compilation = config.GetSection("system.web/compilation")
as CompilationSection;
if (compilation != null)
{
compilation.Debug = !compilation.Debug;
config.Save();
WriteMessage(
"Debug setting is now: " + compilation.Debug
);
}
}
Using a strongly typed CompilationSection object allows to use to read and write the attributes inside a <compilation> section. We can make changes to this section (and any others) and save all the changes at once using the Save method of the System.Configuration.Configuration object returned from OpenWebConfiguration.
There are a few caveats to updating configuration files. First, your application will need write permissions on the file. Typically, the NETWORK SERVICE and ASPNET accounts used by the runtime do not have write permissions on files and directories in an application’s home folder. One safe way to approach the problem is the technique used here - a combination of Windows authentication and impersonation. These settings allow the request to execute with the identity of the client. If the client has write permissions to the configuration file, the above snippet will be successful.
Another caveat is that the ASP.NET runtime watches web.config and will restart the web application when a change occurs. Specifically, the runtime will create a new instance of your application inside of a new AppDomain anytime you write to web.config. A restart can have a performance impact, so writing to web.config should not occur often.
If you need more control over permissions and application restarts when it comes to updating web.config, you might want to look at using external configuration sources, as described in the next section.
Using an External Configuration Source
You can take any configuration section and place the section into it’s own, dedicated file.. As an example, let’s take a look at a new version of our web.config file:
<?xml version="1.0"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
<appSettings configSource="appSettings.config"/>
<connectionStrings configSource="connections.config"/>
<system.web>
<compilation debug="true" />
<authentication mode="Windows"/>
<identity impersonate="true"/>
</system.web>
</configuration>
In this example, we’ve moved our <appSettings> and <connectionStrings> sections into external files. These external files will be XML fragments containing a single section element, for instance, the appSettings.config file will look like the following.
<appSettings>
<add key="message" value="Hello World!"/>
</appSettings>
Using an external configuration source can be useful in a number of scenarios. For instance, you could place a section into an external configSource if you needed an easy method to swap settings for the section depending on the environment (development, test, or production).
You could also use an external configSource if you needed granular control over permissions. For instance, you could lock down your web.config file so that only Administrators could modify the file, but keep the <appSettings> section in an external file that additional roles could modify
There is an additional benefit to using an external file, and that is the ability to have some amount of control over application restarts. If the web.config files changes, the application will restart – there is no alternative. However, if you move a section into an external file, you can tell the runtime if it should, or should not restart the application when the external configuration source changes.
If you look inside of the machine.config file for your computer, in the <configSections> area, you’ll see where a section handler type is defined for each configuration section. Each <section> entry can include an attribute: restartOnExternalChanges. Notice the <section> configuration for the appSettings section uses restartOnExternalChanges="false". This means if your appSettings section lives in an external file, and changes are made to the file, the application will not restart, but you will see the new values in calls to WebConfigurationManager.AppSettings.
Use restartOnExternalChanges with some care, as some parameters can truly only take effect if the application restarts. If you do set restartOnExternalChanges to false for a section, make sure not to cache the parameters for the section in our application, and always read values through the WebConfigurationManager.
Using Encryption
Encrypting an entire section of a configuration file is straightforward with the 2.0 configuration API. There are several configuration areas where sensitive information may appear, for instance, the <connectionStrings> section may contain database usernames and passwords, the <identity> section will contain a username and password when you need the runtime to impersonate a fixed identity. You may even keep a password for a third party web service in appSettings or a custom section. Whenever secrets like these appear, consider encrypting the section instead of leaving the secrets and passwords in plain text.
Note: there are sections that may contain passwords that you cannot encrypt, namely the <processModel> section. You can still use the Aspnet_setreg.exe tool to store a password for this section securely.
The following section of code shows how easy it is to protect (encrypt) and unprotect (decrypt) an entire configuration section. (Note: you do not need to unprotect a section in order to read configuration settings from the section. The runtime will read the encrypted data and perform the decryption necessary for your application to read the plain text values. The Unprotect method call is here to demonstrate how to return a section to unencrypted form).
protected void toggleEncryptionButton_Click(object sender, EventArgs e)
{
Configuration config;
config = WebConfigurationManager.OpenWebConfiguration("~");
ConnectionStringsSection section;
section = config.GetSection("connectionStrings")
as ConnectionStringsSection;
if (section.SectionInformation.IsProtected)
{
section.SectionInformation.UnprotectSection();
}
else
{
section.SectionInformation.ProtectSection(
"DataProtectionConfigurationProvider"
);
}
config.Save();
WriteMessage("connections protected = " +
section.SectionInformation.IsProtected);
}
If we were to examine our web.config file after toggling encryption to on, we’d notice the configuration API has added some additional information:
<?xml version="1.0"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
<protectedData>
<protectedDataSections>
<add name="connectionStrings"
provider="DataProtectionConfigurationProvider"
inheritedByChildren="false" />
</protectedDataSections>
</protectedData>
<appSettings configSource="appSettings.config"/>
<connectionStrings configSource="connections.config"/>
<system.web>
<compilation debug="true" />
<authentication mode="Windows"/>
<identity impersonate="true"/>
</system.web>
</configuration>
In addition, we’d find our connectionStrings.config file would contain a cipherValue instead of plaintext connection strings. (Note: we do not need to use an external configuration source to take advantage of encryption, the configuration API would have happily encrypted the connection strings section if it lived inside of web.config).
<connectionStrings>
<EncryptedData>
<CipherData>
<CipherValue>AQAAANCMnd8BF....</CipherValue>
</CipherData>
</EncryptedData>
</connectionStrings>
At runtime, the configuration API will decrypt sections on the fly. We can still use WebConfigurationManager.ConnectionStrings to return connection strings usable by our application.
To understand what we are seeing in the configuration file, we first need to realize that the runtime turns to a configuration encryption provider for encryption and decryption work. The two providers shipping in .NET 2.0 are the DataProtectionConfigurationProvider and the RSAProtectedConfigurationProvider (you can also implement your own protected configuration provider if need be). We can specify the provider we want to use in the string passed to the ProtectSection method, as seen in the earlier source code snippet. In our example we are using the DataProtectionConfigurationProvider.
The DataProtectionConfigurationProvider uses the Windows Data Protection API (DPAPI) underneath the covers. This provider a machine-specific secret key for encryption and decryption work. Because the DataProtectionConfigurationProvider relies on a machine-specific key, you can only decrypt cipher text that was encrypted on the same machine.
If you need to move configuration files with encrypted sections from machine to machine, you’ll need the RSAProtectedConfigurationProvider. The RSAProtectedConfigurationProvider, as the name would imply, uses RSA public key encryption. You can work with the RSAProtectedConfigurationProvider from the command line tool aspnet_regiis, which includes options to create a keypair (-pc), export a keypair (-px), import a keypair (-pi), grant access to a keypair (-pa), remove access (-pr), and more. Command line arguments also allow you to specify which encryption provider to use.
In Summary
The configuration API and associated command line tools offer flexibility and convenience in updating, encrypting, and managing configuration files. When modifying configuration files, think about application restart issues and how to ensure write permissions to the configuration files.
youtube api
<param name="movie" value="http://www.youtube.com/v/cTnXDDgG91Q&hl=en&fs=1"></param>
<param name="allowFullScreen" value="true"></param>
<param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/cTnXDDgG91Q&hl=en&fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object></p>
Monday, December 8, 2008
set Default button of user define control
page load event
Page.Form.DefaultButton = btn_login.UniqueID;
where btn_login is the button id in userdefine control
Wednesday, December 3, 2008
flash in asp.net
<param name="allowScriptAccess" value="sameDomain" />
<param name="movie" value="/Portals/0/Skins/ImpressiveSkinOrange/images/impressflash.swf" />
<param name="quality" value="high" />
<param name="wmode" value="transparent" />
<param name="bgcolor" value="#ffffff" />
<embed src="/Portals/0/Skins/ImpressiveSkinOrange/images/impressflash.swf" quality="high" wmode="transparent" bgcolor="#ffffff" width="744" height="124" name="impressflash" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>
Tuesday, December 2, 2008
sid in oracle 9i
TNSNAMES.ORA-----This files contains the information which is used by the system to connect to oracle database.
TNS means Transparent Network Substrate (TNS)
This file is usually located at the following path.
.....\oracle\product\10.2.0\db_1\NETWORK\ADMIN
or
D:\oracle\ora90\NETWORK\ADMIN\tnsnames.ora
It contains several informations like
PROTOCOL
HOST IP ADDRESS
PORTNO
SID
etc
A typical entry in this file looks like this.
Expand|Select|Wrap|Line Numbers
1. MES =
2. (DESCRIPTION =
3. (ADDRESS = (PROTOCOL = TCP)(HOST = 10.35.15.1)(PORT = 1521))
4. (CONNECT_DATA = (SID = MES))
5.
Reply
SID is the name of the Database to which we are connecting to
The full form of SID is SystemIdentifier which should be unquie in the TNS.ora file
TNS file contains info , through which the System connects to Oracle Database.
TNS file contains
1)PROTOCOL ( Mostly TCP..TransmissionControlProtocol)
2)HOST IP ADDRESS (Where the Database is resided ..Generally we call it as Server.Even the DSCP number acts as substitute)
3)PORTNUMBER ( 1521..Widely used by oracle)
4)SID (the name we provide for DataBase)
5)SERVER (Dedicated/Shared Which is defined at DB CREATION LEVEL)
Reply
Friday, November 28, 2008
How to Use an XPath on a DataSet
Here are the used classes:
DataRow
DataSet
XmlDataDocument
XmlNodeList
XmlNode
Here's the XML file:
<?xml version="1.0" encoding="utf-8"?>
<CategoryList>
<Category ID="01">
<Title>One</Title>
</Category>
<Category ID="03">
<Title>Three</Title>
</Category>
<Category ID="04">
<Title>Four</Title>
</Category>
<Category ID="02">
<Title>Two</Title>
</Category>
</CategoryList>
Finally, here's the code:
DataSet ds = new DataSet();
ds.ReadXml(Server.MapPath("file.xml"));
XmlDataDocument xmlDoc = new XmlDataDocument(ds);
XmlNodeList nodeList = xmlDoc.DocumentElement.SelectNodes("/CategoryList/Category[@ID=01]");
DataRow myRow;
foreach (XmlNode myNode in nodeList)
{
myRow = xmlDoc.GetRowFromElement((XmlElement)myNode);
if (myRow != null)
Response.Write(myRow[0]);
}
How to get the detail associated with the current user using C# (.NET)
String sFile;
sFile = Path.GetTempFileName();
Console.WriteLine("Temporary File " + sFile);
//Store the Values Temporarily in Temp file
StoreVar(sFile);
Temporary folders Name
string sPath;
sPath = Path.GetTempPath();
Console.WriteLine("Temporary Path := " + sPath );
IsPathRooted method of Path class returns a value indicating whether the specified path string contains absolute or relative path information
if (Path.IsPathRooted(@"c:\temp\") == true)
{
Console.WriteLine("Path is absolute");
}
else
{
Console.WriteLine("Path is relative");
}
To retrieve the logical MyDocuments use the following
Console.WriteLine("MyDocuments := " + Environment.GetFolderPath( Environment.SpecialFolder.MyDocuments));
To retrieve the logical desktop use the following
Console.WriteLine("Desktop := " + Environment.GetFolderPath( Environment.SpecialFolder.Desktop));
Cookies folder (FullName) can be retrieved using the following snippet
Console.WriteLine("Cookies := " + Environment.GetFolderPath( Environment.SpecialFolder.Cookies ));
ApplicationData is the directory that serves as a common repository for application-specific data for the current roaming user. It can be retrieved using
Console.WriteLine("ApplicationData := " + Environment.GetFolderPath( Environment.SpecialFolder.ApplicationData));
How to get the network domain name associated with the current user using C# (.NET)
Console.WriteLine("Domain Name := " + Environment.UserDomainName );
No of processors in the given machine can be retrieved by
Console.WriteLine("ProcessorCount := " + Environment.ProcessorCount );
Retrieve user name using .NET / How to get user name using C#
The following code will get the user name of the computer
Console.WriteLine("User Name := " + Environment.UserName);
Get Computer Name using .NET (C#)
Console.WriteLine("Machine Name := " + Environment.MachineName);
Get all Sub Directories under a folder using C# (.NET)
Listing all subdirectories under a root directory using .NET (C#) is simple. You can use the DirectoryInfo..::.GetDirectories Method to list the directories
private static void ListDir(string rootdir)
{
try
{
DirectoryInfo[] DI = new DirectoryInfo(rootdir).GetDirectories("*.*", SearchOption.AllDirectories ) ;
foreach (DirectoryInfo D1 in DI)
{
Console.WriteLine(D1.FullName);
}
}
catch (DirectoryNotFoundException dEX)
{
Console.WriteLine("Directory Not Found " + dEX.Message);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
Here is the overload list of GetDirectories method
Name
Description
GetDirectories()()()
Returns the subdirectories of the current directory.
GetDirectories(String)
Returns an array of directories in the current DirectoryInfo matching the given search criteria.
GetDirectories(String, SearchOption)
Returns an array of directories in the current DirectoryInfo matching the given search criteria and using a value to determine whether to search subdirectories.
C# GetDirectories()()() Method, C# GetSubDirectories Method, Dir Function in VB.NET, Dir Function in C#, List All Directories using C#, List Sub Directories using C#, How to get all subdirectories using C#
.NET GetDirectories()()() Method, .NET GetSubDirectories Method, Dir Function in VB.NET, Dir Function in .NET, List All Directories using .NET, List Sub Directories using .NET, How to get all subdirectories using .NET
Get Size of a Particular Directory using C# (.NET)
One way to find the size of entire directory (including all sub-directories) is to sum up the size of all files in those directories
The following code snippet adds the size of all the files to get the directory size
private static void GetDirSize(string rootdir)
{
try
{
long DirSize = 0;
DirectoryInfo[] DI = new DirectoryInfo(rootdir).GetDirectories("*.*", SearchOption.AllDirectories);
FileInfo[] FI = new DirectoryInfo(rootdir).GetFiles("*.*", SearchOption.AllDirectories);
foreach (FileInfo F1 in FI)
{
DirSize += F1.Length;
}
Console.WriteLine("Total Size of {0} is {1} bytes", rootdir, DirSize);
}
catch (DirectoryNotFoundException dEX)
{
Console.WriteLine("Directory Not Found " + dEX.Message);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
Get Directory Size using C#, Get SubDirectory Size using C#, SearchOption.AllDirectories in C#, How to Search All Directories using C#, FileSize using C#, How to get directory size using C#
Get Directory Size using .NET, Get SubDirectory Size using .NET, SearchOption.AllDirectories in .NET, How to Search All Directories using .NET, FileSize using .NET, How to get directory size using .NET
Converting Date to British Date Format using C# (.NET)
Formatting dates are easy in C#. The following snippet gets the current date in British format.
private static string ConvertDate2British()
{
return String.Format("{0:dd-MM-yy}", DateTime.Now);
}
How to convert dates to British format using .NET, Date Conversion using .NET, .NET String.Format Method, Get Current Date using .NET, .NET Today Method
See also:
Formatting Date Input - DateFOrmat (SQL
Some Blogger id
Some Blogger id
send mail
public void SendMail()
{
//Builed The MSG
System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage();
msg.To.Add(txtemail.Text);
// msg.To.Add("1980dinesh@gmail.com");
msg.From = new MailAddress("dinesh.kumar@mobilex.in", "Friends Invitaion", System.Text.Encoding.UTF8);
msg.Subject = "Frineds";
msg.SubjectEncoding = System.Text.Encoding.UTF8;
msg.Body = "Hi" ;
msg.BodyEncoding = System.Text.Encoding.UTF8;
msg.IsBodyHtml = true;
msg.Priority = MailPriority.High;
//Add the Creddentials
SmtpClient client = new SmtpClient();
//client.UseDefaultCredentials = false;
//client.Credentials = new System.Net.NetworkCredential("dinesh.kumar@mobilex.in", "dinesh08");
//client.Port = 587;//or use 587
//client.Host = "smtp.gmail.com";
client.EnableSsl = true;
try
{
client.Send(msg);
//you can also call client.Send(msg)
}
catch (System.Net.Mail.SmtpException ex)
{
}
}
<appSettings/>
<system.net>
<mailSettings>
<smtp>
<network host="smtp.gmail.com" port="587" userName="suresh.chandra@swaransoft.com" password="xyz"/>
</smtp>
</mailSettings>
</system.net>
Send mail in asp.net
{
try
{
MailMessage message = new MailMessage();
message.From = new MailAddress("subudhi.suresh@gmail.com");
message.To.Add(new MailAddress("subudhi.suresh@gmail.com"));
message.Subject = "test"; // sets the subject property of message
message.Body ="hi"; // sets the body for the message
//message.Priority = MailPriority.High;
message.IsBodyHtml = false;
SmtpClient client = new SmtpClient("smtp.googlemail.com", 587);
System.Net.NetworkCredential basicAuthentication = new System.Net.NetworkCredential("suresh.chandra@swaransoft.com", "chandra08");
client.EnableSsl = true;
client.UseDefaultCredentials = false;
//Put your own, or your ISPs, mail server name onthis next line
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.Credentials = basicAuthentication;
client.Send(message);
//return true;
}
catch(Exception ex) { }
}
Tuesday, November 25, 2008
video in asp.net
< param name="FileName" value="< %=s %>">
< %--< param name="AutoRewind" value="true">
< param name="AutoStart" value="false">
< param name="ClickToPlay" value="true">
< param name="Mute" value="false">
< param name="ShowControls" value="true">
< param name="ShowDisplay" value="true">
< param name="ShowTracker" value="true">
< param name="PlayCount" value="1">--%>
< EMBED type="video/x-ms-wmv" width="416px" height="320px" autostart="true" src="< %=s %>" URL=".\video\193.mpg" enabled="True" balance="0" currentPosition="0" enableContextMenu="True" fullScreen="False" mute="False" playCount="1" rate="1" stretchTofit="False" uiMode="3" >
< /embed>
< /object>-
Tuesday, November 18, 2008
how to send sms to mobile in asp.net(C#)
Visit this might shed a light on it.
http://www.ozekisms.com/index.php?owpn=230
http://www.smsxchange.com/main/default.asp
It also has been discussed here.
http://forums.asp.net/t/1193672.aspx
1. First of all you should have the SMS Package for sending SMS
2. Suppose if you've then right click on application in VS and select Add Web Referrence...
3. You've to add this in Web Config AppSettings
add this in u r code or you can customize in your own way
private bool SendSms(string mobileNo)
{
try
{
mobileNo = "Internation Code 1" + mobileNo.Substring(1, mobileNo.Length - 1);
BulkSingleSend mySms = new BulkSingleSend();
Boolean ServiceStatus = mySms.IsServiceAlive();
string smsBody = System.Configuration.ConfigurationManager.AppSettings["smsbody"].ToString();
string result = mySms.SendSMS("From", "Subject", mobileNo.Text, TextBox1.Text);
return true;
}
catch
{
return false;
}
}
Note: When you add Web Referrence in your Application you'll find three new files with extention .disco, .wsdl, .discomap extention files.
private void Send_Click(
object sender, System.EventArgs e)
{
try
{
SmsTest.net.webservicex.www.SendSMS smsIndia=
new SmsTest.net.webservicex.www.SendSMS();
SmsTest.com.webservicex.www.SendSMSWorld smsWorld =
new SmsTest.com.webservicex.www.SendSMSWorld();
if(rdoType.SelectedValue == "1")
smsIndia.SendSMSToIndia(txtMobileNo.Text.Trim(),
txtEmailId.Text.Trim(), txtMessage.Text);
else
smsWorld.sendSMS(txtEmailId.Text.Trim(),
txtCountryCode.Text.Trim(), txtMobileNo.Text.Trim(),
txtMessage.Text);
lblMessage.Visible = true;
lblMessage.Text="Message Send Succesfully";
}
catch(Exception ex)
{
lblMessage.Visible = true;
lblMessage.Text="Error in Sending message"+ex.ToString();
}
}
Sunday, November 16, 2008
Great articles on Data Structures and Collections in .NET
I would recommend reading these below mentioned articles from MSDN for any programmer who wants to develop or is developing using Microsoft .NET Framework technologies.
Part 1: An Introduction to Data Structures
Part 2: The Queue, Stack, and Hashtable
Part 3: Binary Trees and BSTs
Part 4: Building a Better Binary Search Tree
Part 5: From Trees to Graphs
Part 6: Efficiently Representing Sets
Posted by chirag at 6:27 PM 0 comments
Labels: .NET Concepts, .NET Examples, .NET Framework, C# .NET, VB .NET
Data Structures in .NET
Why data structures are important, and their effect on the performance of an algorithm. To determine a data structure's effect on performance, we'll need to examine how the various operations performed by a data structure can be rigorously analyzed. Finally, we'll turn our attention to two similar data structures present in the .NET Framework: the Array and the List. Chances are you've used these data structures in past projects. In this article, we'll examine what operations they provide and the efficiency of these operations.
The Queue and Stack. Like the List, both the Queue and Stack store a collection of data and are data structures available in the .NET Framework Base Class Library. Unlike a List, from which you can retrieve its elements in any order, Queues and Stacks only allow data to be accessed in a predetermined order. We'll examine some applications of Queues and Stacks, and see how these classes are implemented in the .NET Framework. After examining Queues and Stacks, we'll look at hashtables, which allow for direct access like an ArrayList, but store data indexed by a string key.
While arrays and Lists are ideal for directly accessing and storing contents, when working with large amounts of data, these data structures are often sub-optimal candidates when the data needs to be searched. The binary search tree data structure, which is designed to improve the time needed to search a collection of items. Despite the improvement in search time with the binary tree, there are some shortcomings. SkipLists, which are a mix between binary trees and linked lists, and address some of the issues inherent in binary trees.
A graph is a collection of nodes, with a set of edges connecting the various nodes. For example, a map can be visualized as a graph, with cities as nodes and the highways between them as edged between the nodes. Many real-world problems can be abstractly defined in terms of graphs, thereby making graphs an often-used data structure.
Finally, in Part 6 we'll look at data structures to represent sets and disjoint sets. A set is an unordered collection of items. Disjoint sets are a collection of sets that have no elements in common with one another. Both sets and disjoint sets have many uses in everyday programs, which we'll examine in detail in this final part.
Part 1: An Introduction to Data Structures
Technorati Tags: Data Structures, C# .NET, .NET framework, ArrayList, .NET Collections
Posted by chirag at 10:01 AM 0 comments
Labels: .NET Concepts, .NET Framework, C# .NET
Creating / Writing XML Documents with the XmlTextWriter Class
The .NET Framework provides a class designed specifically to create XML documents, theSystem.Xml.XmlTextWriter class. By using this class to create XML documents you don't need to worry about illegal XML characters in the text portion of the XML document, and the end code is much cleaner. In this article we'll look at using the XmlTextWriter class to create XML documents on the fly.
The Basics of the XmlTextWriter Class
The XmlTextWriter class contains a number of methods that are useful for starting and completing an XML document and for adding elements and attributes to the XML document. The most important methods are:
- WriteStartDocument() - you should call this method to start creating an XML document. This will create the first line in the XML document, specifying that the file is an XML document and its encoding.
- WriteStartElement(string) - this method creates a new element in the XML document with the name specified by the string input parameter. (You can also specify a namespace as a second, optional string parameter.)
- WriteElementString(name, text_value) - If you want to create an XML element with nothing but text content (i.e., no nested elements), you can use this method.
- WriteAttributeString(name, value) - this method writes an attribute name and value to the current element.
- WriteEndElement() - this method closes off the element created in theWriteStartElement(string) method call.
- WriteEndDocument() - this method completes the writing of the XML document.
- Close() - this method closes the underlying stream, writing the contents of the XML document to the specified file location.
To get started using the XmlTextWriter class you need to specify the file and encoding in the class's constructor. The encoding needs to be of the type System.Text.Encoding; some example encoding values are: System.Text.Encoding.ASCII, System.Text.Encoding.Unicode, andSystem.Text.Encoding.UTF8. Alternatively, you can specify in the constructor that the output of the XmlTextWriter class should be squirted out to a specified Stream.
Creating a Simple XML Document with XmlTextWriter
To demonstrate using the XmlTextWriter class let's create a simple XML document, saving it to a specified file location. This XML document will contain information about the current user visiting the page, and will have this structure:
|
(This XML file structure was chosen so that it would illustrate using all of the XmlTextWritermethods discussed in the previous section.)
The code needed to create this XML document through an ASP.NET Web page is shown below:
<%@ Import Namespace="System.Xml" %>
<%@ Import Namespace="System.Text" %>
;"; |