How to change Local datetime into UTC Format

DateTime has a Kind property, which can have one of the three values:

    Unspecified
    Local
    Utc


DateTime convertedDate = DateTime.SpecifyKind(
    DateTime.Parse(dateStr),
    DateTimeKind.Utc);

var kind = convertedDate.Kind; // will equal DateTimeKind.Utc
Now, once the system knows its in UTC time, you can just call ToLocalTime:

DateTime dt = convertedDate.ToLocalTime();
This will give you the result you require.

How to find record for Nearest current time in sql sever

Hi,

I am having three record in my table.

1      Student        03/06/2012       04:00 PM  
2    Staff     30/05/2012     02:58 PM  
3    Others     03/06/2012     10:00 AM    

In this table have two record on same date Student and Staff ( 03/06/2012 ) but time field is different. Student is  04:00 PM and Others is 10:00 AM.

How to get nearest time record using current time.

ex. my current time is 8.00 AM or 12.00 PM get record no 3. because its time 10.00 AM. It is only nearest to current time. If my current time is 03.00 PM or 06.00 PM then get record no 1. because its time 04.00 PM. It is only nearest to current time.

Solution

SELECT Top 1 * FROM tablename WHERE CONVERT(VARCHAR(10),datetimecolumnname,103) ='01/06/2012' order by ABS(DATEDIFF(minute, datetimecolumnname, GETDATE()))


CONVERT(VARCHAR(10),datetimecolumnname,103) ='01/06/2012'
------------------------------------------------------------------------------------
It will get a record on 03/06/2012

order by ABS(DATEDIFF(minute, datetimecolumnname, GETDATE()))
----------------------------------------------------------------------------------------
It will get a closest time from current time.

SELECT Top 1
------------------
it will get a first record of after performing these conditions.

 

Get Time From datetime field in SQL2005

Get Time From datetime field in SQL2005

SELECT * FROM tablename WHERE  CONVERT(VARCHAR(8),datetimecloumnName,108) >= '10:35:16 AM' AND CONVERT(VARCHAR(8),datetimecloumnName,108) <= '11:35:16 AM'


Get Date From datetime field in SQL2005 (103-as dd/mm/yyyy)

SELECT * FROM tablename WHERE CONVERT(VARCHAR(10),datetimecloumnName,103) ='02/06/2012'

How to compare two collections and get same element(System.Collection.Generic.List)

 List<String> NewList = null;
 List<String> student = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 };

 List<String> staff = { 5, 26, 8,  20, 34, 15 };

foreach (String mbr in student )  {
if(staff.Contains(mbr) {
                 NewList.Add(mbr);
      }
}

In this NewList has the values 5,8,15 from Student List.

How to delete Last record from SQL Server

Id- ColumnName

delete from tableName where Id in (select top 1 Id from tbaleName order by Id desc)

How to get a particular column value from dataset

DataSet ds;
        string data = ds.Tables[0].Rows[0].ItemArray[0].ToString();

How to pass control to a method

public void ChangeProperties(Control ctrl)
{
     ctrl.Enabled = true;
}

and call it like that :

ChangeProperties(btnAcesScore);

Convert dataset to arraylist in asp.net using c#

public partial class _Default : System.Web.UI.Page
{
    string connectionString = "Data Source=LocalHost; Initial CataLog=ERPFinAccounting;
                                 User ID=kris; Password=XXX";
     protected void Page_Load(object sender, EventArgs e)
     {
        ArrayList myArrayList = ConvertDataSetToArrayList();
        // Display each item of ArrayList
        foreach (Object row in myArrayList)
        {
          Response.Write(((DataRow)row)["AccountCode"].ToString() + " " + ((DataRow)row)["AccountName"].ToString() + "
");
        }
     }
}





public ArrayList ConvertDataSetToArrayList()
{
    SqlConnection conn = new SqlConnection(connectionString);
    SqlCommand cmd = new SqlCommand("Select * from AccountsTable", conn);
    cmd.CommandType = CommandType.Text;
    conn.Open();

    SqlDataAdapter myAdapter = new SqlDataAdapter();
    myAdapter.SelectCommand = cmd;

    DataSet myDataSet = new DataSet();
    myAdapter.Fill(myDataSet);

    ArrayList myArrayList = new ArrayList();
    foreach (DataRow dtRow in myDataSet.Tables[0].Rows)
     {
           myArrayList.Add(dtRow);
     }
     conn.Close();
     return myArrayList;
}

How to count list of the tables in SQL Server Database

Get the total number of table count in Database

USE yourDataBaseName
SELECT COUNT(*) from information_schema.tables
WHERE table_type = 'base table'

Get the total number of table Name in Database

USE yourDataBaseName
GO
SELECT *
FROM sys.Tables
GO

How to use Lamda expression instead of If Condition in C#


Normal IF Condition
protected void Page_Load(object sender, EventArgs e)
    {
        int id = 1;
        int k=2;
        int j = 3;
      
         if ( id  > 2)
        {
            Response.Write(k);
        }
        else
        {
            Response.Write(j);
        }
    }

Lamda Expression
protected void Page_Load(object sender, EventArgs e)
    {
        int id = 1;
        int l;
        int k=2;
        int j = 3;
       
        // Here my if condition   (?)  it is true execute k , False execute j.  The value store into variable l.
        l = (id > 2) ? k : j;

        Response.Write(l);
    }

what is the difference between asp.net and mvc

If a 3-tier design were like this:
Client <-> Middle <-> Data
the MVC patter would be:
     Middle
     ^    |
     |    v
Client <- Data
Meaning that:
  • in the 3-tier equivalent, communication between layers is bi-directional and always passes through the Middle tier
  • in the MVC equivalent the communication is in unidirectional; we could say that each "layer" is updated by the one at the left and, in turn, updates the one at the right –where "left" and "right" are merely illustrative
P.S. Client would be the View and Middle the Controller


for more reference about the mvc 
http://weblogs.asp.net/scottgu/archive/2007/11/13/asp-net-mvc-framework-part-1.aspx 

how to Execute Multiple Queries on a Single Connection?

public void Save()
{
    int hit = 0;
        using (SqlConnection conn = new SqlConnection(WebConfigurationManager.ConnectionStrings["dbconnection"].ConnectionString))
        {
            SqlCommand cmd = new SqlCommand("SELECT TOP 1 * from Hitcount order by id desc", conn);
            SqlCommand command = new SqlCommand("insert into Hitcount(Name,Hit)values(@Name,@hit)", conn);

            conn.Open();

            SqlDataReader rdr = cmd.ExecuteReader();
            if (rdr.Read())
            {
                hit = Convert.ToInt32(rdr["hit"]);
                hit = hit + 1;
                rdr.Close();
            }

            command.Parameters.AddWithValue("@Name", "default");
            command.Parameters.AddWithValue("@hit", hit);
            command.ExecuteNonQuery();

            conn.Close();
        }
}


protected void button1_Click(object sender, EventArgs e)
{
    

How to get Client IP Address using C#

    protected string GetIP()
        {

            string localIP = null;
            IPHostEntry localEntry = Dns.GetHostEntry(Dns.GetHostName());
            foreach (IPAddress Ip in localEntry.AddressList)
            {
                if (Ip.AddressFamily.ToString() == "InterNetwork")
                   localIP = Ip.ToString();
               
            }

            return localIP;

        }

protected void Page_Load(object sender, EventArgs e)
        {
            Label1.Text = GetIP();
         }

Real time example for Structure in C#

A struct type is a value type that can contain constructors, constants, fields, methods, properties, indexers, operators, events, and nested types.
Structs are also typically used in graphics/rendering systems. There are many benefits to making points/vectors structs.

public struct Money
{
    public string Currency { get; set; }
    public double Amount { get; set; }
}
public struct PhoneNumber
{
    public int Extension { get; set; }
    public int RegionCode { get; set; }
    //... etc.
}
public struct FullName
{
    public string FirstName { get; set; }
    public string MiddleName { get; set; }
    public string LastName { get; set; }
}

 For more understanding of structure view the following link
http://www.c-sharpcorner.com/UploadFile/rajeshvs/StructuresInCS11112005234341PM/StructuresInCS.aspx

Difference Between SQLClient, OledbClient, ODBCClient

System.Data.SQLClient

Can only be used for connecting to SQL Server 2000 and later. But you will get optimal performance when connecting to those databases.

System.Data.OledbClient

Can be used to connected to SQL 6.5

OLEDBClient gives you ability to connect to other database like ORALCE or Access. But for working with SQL Server you will get better performance using SQLClient.

Note: For connecting to ORALCE Microsoft also has ORACLEClient.


System.Data.ODBCClient
provides connection to legacy databases ( e.g. MS Access 97) using ODBC drivers.

Asp.Net Server Tags

 Asp.Net Inline Expression
http://support.microsoft.com/kb/976112

Here are some helpful links for you on the various tags.

<% %>  An embedded code block is server code that executes during the page's render phase. The code in the block can execute programming statements and call functions in the current page class. http://msdn2.microsoft.com/en-gb/library/ms178135(vs.80).aspx

<%= %> most useful for displaying single pieces of information. http://msdn2.microsoft.com/en-us/library/6dwsdcf5(VS.71).aspx

<%# %> Data Binding Expression Syntax. http://msdn2.microsoft.com/en-us/library/bda9bbfx.aspx

<%$ %> ASP.NET Expression. http://msdn2.microsoft.com/en-us/library/d5bd1tad.aspx

<%@ %> Directive Syntax. http://msdn2.microsoft.com/en-us/library/xz702w3e(VS.80).aspx

<%-- --%> Server-Side Comments. http://msdn2.microsoft.com/en-US/library/4acf8afk.aspx

<%: %> Like <%= %> But HtmlEncodes the output (new with Asp.Net 4). http://weblogs.asp.net/scottgu/archive/2010/04/06/new-lt-gt-syntax-for-html-encoding-output-in-asp-net-4-and-asp-net-mvc-2.aspx

wcf basics

WCF stands for "Windows Communication Foundation".

I have to learn WCF for some project requirement. When i started going through blogs and sites, I found it so boring and dry and complicated...and what not..i had slowly started losing interest in the technology itself..:(

But after reading the following post i understood the basics very quickly.

Very nice article..!!

So i have share that articles with you guys!

I think you guys too enjoy with this articles. cheers!

1. What is WCF?
http://blah.winsmarts.com/2008-4-What_is_WCF.aspx


2. Writing the Simple WCF Hello World Application - Service.
http://blah.winsmarts.com/2008-4-Writing_the_WCF_Hello_World_App.aspx


3. Writing the Simple WCF Hello World Application - Consumer (i.e Client)
http://blah.winsmarts.com/2008-4-Writing_your_first_WCF_client.aspx


4.Host a WCF Service in IIS 7 & Windows 2008 - The right way
http://blah.winsmarts.com/2008-4-Host_a_WCF_Service_in_IIS_7_-and-amp;_Windows_2008_-_The_right_way.aspx
 

How to Pass and Access a class into method in C#

public class Employee
    {
        public string EmpName{ get; set; }

        public string EmpAddress { get; set; }

    }

public class Welcome
    {
        public string WelcomeMethod(Employee emp)
        {
            return string.Format("Welcome {0} From {1}", emp.EmpName, emp.EmpAddress);
        }
    }

protected void Button1_Click(object sender, EventArgs e)
        {
                 Employee obj = new Employee();
                 obj. EmpName = TextBox1.Text;
                 obj.EmpAddress = TextBox2.Text;
                
                Welcome.WelcomeMethod(obj);
               
         }

Binding the Listview without page refresh in asp.net

<asp:ListView ID="lstInfo" runat="server" >
    <LayoutTemplate>
    </LayoutTemplate>
 <ItemTemplate>
</ItemTemplate>
 </asp:ListView>



protected void BindActiveRecord()
        {
            .DataSource = ds;
            lstInfo.DataBind();
        }
protected void Page_PreRender(object obj, EventArgs e)
        {
            BindActiveRecord();
         }

how to use Pager control in gridview without page refreshing

You can use EnableSortingAndPagingCallbacks = "true"

 For Example
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" AllowSorting = "true"
 DataSourceID="SqlDataSource1" EnableSortingAndPagingCallbacks = "true">
 <Columns>
  <asp:BoundField DataField="FIRST_NAME" HeaderText="First Name"
                    SortExpression="FIRST_NAME" />
  <asp:BoundField DataField="LAST_NAME" HeaderText="Last Name"
                    SortExpression="LAST_NAME" />
  <asp:BoundField DataField="ADDRESS" HeaderText="Address"
                    SortExpression="ADDRESS" />
 </Columns>                 
</asp:GridView>

How to validate DropDownList In asp.net

<asp:DropDownList ID="ddlAttachment" runat="server">
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="ddlAttachment" InitialValue="Choose One" ErrorMessage="Select One!" ></asp:RequiredFieldValidator>

how to use Pager control in listview without page refreshing

<asp:ListView ID="lstinfo" runat="server" OnPagePropertiesChanging="PropertiesChanging_lstinfoPager" >
    <LayoutTemplate>
<LayoutTemplate>
<ItemTemplate>
</ItemTemplate>
 </asp:listview>

<!-- Data Pager -->
    <div style="float:right;">
     <asp:DataPager ID="lstinfoPager" runat="server" PagedControlID="lstinfo"
    PageSize="5" >
    <Fields>
        <asp:NextPreviousPagerField ShowNextPageButton="false" ShowFirstPageButton="True" ButtonCssClass="pager"  />
        <asp:NumericPagerField CurrentPageLabelCssClass="current" NumericButtonCssClass="pager"  />
        <asp:NextPreviousPagerField ShowLastPageButton="True" ShowPreviousPageButton="False" ButtonCssClass="pager" />
    </Fields>
</asp:DataPager>



protected void PropertiesChanging_lstinfoPager(object sender, PagePropertiesChangingEventArgs e)
        {
            lstinfoPager.SetPageProperties(e.StartRowIndex, e.MaximumRows, false);
            BindRecord();
        }

public void BindRecord()
{
       //Bind the listview
      lstinfo.DataSource = Your_datasource;
     lstinfo.DataBind();
}

How to get Enum Integer value in c#

public enum GetColor
    {
        Red = 1,
        Green = 2,
        Blue = 3,
    }

public void Button1_Click(object sender, EventArgs e)
{
        int colorvalue = Convert.ToInt16(GetColor.Green) ;
}

How to create jQuery DNNTabs in DotNetNuke

DotNetNuke has a Jquery DNNTabs Plugin. You can just copy and paste the following code in your .ascx control.

<script type="text/javascript">
    jQuery(function ($) {
        $('#tabs').dnnTabs();
    });
</script>


<div id="tabs" class="dnnForm dnnModuleSettings dnnClear">
    <ul class="dnnAdminTabNav dnnClear">
        <li><a href="#tab1">Tab1</a></li>
        <li><a href="#tab2">Tab2</a></li>
      
    </ul>
    <div id="tab1">
        Some content...
    </div>
    <div id="tab2">
        Success
    </div>       
   </div>

How to retrive the data from database based on datetime in asp.net

Your database have datetime field CreatedOn
DESC- Descending  Order
ASC - Ascending Order.

MSSQL Query

select * from tablename ORDER BY CONVERT(datetime, CreatedOn) DESC;

select * from tablename ORDER BY CONVERT(datetime, CreatedOn) ASC;


For cheking Condition

select * from tablename where Status = 1 ORDER BY CASE WHEN (CONVERT(date, ClosedDae) <= GetDate())THEN 1 ELSE 0  END ASC;

How to delete uploaded file from server using c#

you can write this code into your base class

using System.IO;

public static void DeleteExistFile(string name, string path)
    {
        if (name != null && File.Exists(path))
        {
            File.Delete(path);
        }
    }



You can write the following code In derived class button click event


Protected void Button1_Click(object sender, EventArgs e)
{
  string path = "~/Images/"+logo.jpg;
  BaseclassName.DeleteExistFile(filename,path);
}

(OR) If you want to single line code with out checking file exits or not, you have written this code


using System.IO;


Protected void Button1_Click(object sender, EventArgs e)
{
 File.Delete("~/Images/logo.jpg");
}

How to access sql connection using Method in ASP.NET

In Web.Config

 <connectionStrings>
     <add name="connection" connectionString="Data Source=.\SQLEXPRESS;Integrated Security=True;Initial Catalog=test;" providerName="System.Data.SqlClient" />
   </connectionStrings>



In DBClass.cs this is the class file 

using System.Data.SqlClient;
using System.Data;
using System.Web.Configuration;

//Get Connection String
    public static string connectionstring = WebConfigurationManager.ConnectionStrings["connection"].ConnectionString;

//Get Connection
    public static SqlConnection GetDbConnection()
    {
        return new SqlConnection(connectionstring);
    }


In Your aspx.cs

 SqlConnection con = DBClass.GetDbConnection();
SqlCommand cmd = new SqlCommand ("your sql command",con);
cmd.Connection.Open();
cmd.ExecuteNonQuery();
cmd.Connection.Close();



How to call connection string from Web.config In ASP.Net

 ASP.NET has a couple new ways to reference connection strings stored in the web.config or machine.config file.

<connectionStrings>
   <add name="LocalSqlServer" connectionString="data source=.\SQLEXPRESS; Initial Catelog="example" Integrated Security=true" providerName="System.Data.SqlClient"   />
</connectionStrings>

Easiest way to create connectiong string is to drag and drop one of your tables from the database to the page - connection string will be generated automatically. And you can call it like this:

using System.Configuration;

string conString = ConfigurationManager.ConnectionStrings["ConnectionStringName"].ConnectionString;
SqlConnection conn = new SqlConnection(conString);
conn.Open();


the another method is using AppSettings,

In Web.config

<configuration>

  <appSettings>

     <add key="ConnectionString"

          value="server=localhost;uid=sa;pwd=;database=DBPerson" />

  </appSettings>

</configuration>



ASPX Code Behind (aspx.cs)

using System.Configuration;

string connectionString = (string )ConfigurationSettings.AppSettings["ConnectionString"];
        SqlConnection conn = new SqlConnection(conString);
        conn.Open();

Connection String In ASP.NET

The connectionStrings element specifies a collection of database connection strings, as name/value pairs, for ASP.NET applications and features.


In Web.Config

<connectionStrings>
   <add name="LocalSqlServer" connectionString="data source=.\SQLEXPRESS;Integrated Security=true;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true"
      providerName="System.Data.SqlClient"   />
</connectionStrings>
<connectionStrings>
   <add name="LocalSqlServer" connectionString="data source=.\SQLEXPRESS; Initial Catelog="example" Integrated Security=true" providerName="System.Data.SqlClient"   />
</connectionStrings>


One of the most misunderstood items, using ASP.Net, and some of the most asked questions, are about Connection Strings – the way in which you connect to the database. Any time you connect to a database, a Connection String is required, so it’s an integral part of .Net programming, whether it’s ASP.Net or WinForms programming. Of course, here, we’re addressing only ASP.Net programming, and mainly with SQL Server.
Each Connection String has several ‘sections’ in it. The basic form of the Connection String consists of:

ConnectionString=""


Your string can reside in different locations, including a DataSource Control (ASP.Net 2.0), in code, on the fly, and in the Web.Config file. Most likely, if you are using a particular string in multiple locations throughout your website, it will probably be best to store it in the Web.Config file. Then, any time, in your application, you need the connection string, the setting in the Web.Config file is referenced instead of the exact connection string. This way, if the connection string ever changes (and believe me, after years of doing this, I’m here to attest that it most likely WILL change at some time), then you will only need to change it in one place. How this is done, will be addressed, later on in this tutorial,

There are many sections of a connection string which are possible, but there are 3 basic sections which are absolutely required: The Server
The Database Name
The authentication
The Server can be notated in the Connection String several different ways, however, the most common usages are:

Data Source=YourServerGoesHere Server=YourServerGoesHere
In the above section, instead of ‘YourServerGoesHere’, you would put the address to the Server itself, in either a domain type of construction (like:MyServer.Com), or an IP address (like: 198.12.1987), Or ./SQLEXPRESS
So, at this point, using the Basic form from above, this would look like:

ConnectionString="Data Source=YourServerGoesHere" or ConnectionString="Server=YourServerGoesHere"
Naturally, the above, as mentioned before, can use ‘Server’ instead of ‘Data Source’
Next comes the Database section. It may be in 2 different forms:
Database=Northwind Intial Catalog=Northwind
The different sections in the Connection String need to be separated, so in order to do this, we use a semi-colon in between the different sections “;”. The entire connection string, then, will be surrounded by double-quotes("").

How to create a custom module in DNN 6

1. Download and install Visual Studio Starter Kit from the following link

http://dotnetnuke.codeplex.com/releases/view/78212#DownloadId=313768
 

2. Now you can open your DNN website Folder in visual studio 2010 by File -> Open Website -> select the website folder.
 

3. Right click your solution from solution explorer and select Add New Item -> choose - Visual c# -> DotNetNuke Dynamic Module and give Module Name. (for eg. My module Name is  NewsandEvents).



4.  Follow the Important Instruction in your visual studio. (i.e) In solution Explorer -> App_code/ModuleName Replace as Philip.NewsAndEvents and In DesktopModule Folder replace DesktopModule/ModuleName as Philip.NewsAndEvents.

5.In Web.config Add the follwing code

<codeSubDirectories>
               <add directoryName="Philip.NewsAndEvents" />
     </codeSubDirectories>


6. If you are working in visual studio 2010, you can also include the following code

<httpRuntime useFullyQualifiedRedirectUrl="true" maxRequestLength="2097152" requestLengthDiskThreshold="8192" requestValidationMode="2.0" />
 

7. Build the website and set start page as Default.aspx and run the website.

8. Login into super user account and choose Host -> SQL

9. Back to visual studio In DesktopModules -> NewsandEvents -> Double Click 01.00.00 SqlDataProvider


10. Edit -> SelectAll (or) ctrl+A, Select All the SqlScript and copy (ctrl+c).



11. Back to Web-Browser Paste your SqlScript Into Script Field.



12. Select Run as script and click Execute.

13. Now you can select Host -> Extensions
14. In extensions select Manage -> Create New Module

15. In create module from -> Select Control and Module folder field -> select Philip.NewsAndEvents, it will automatically bind EditNewsAndEvents.aspx in Resource field. Then give your ModuleName.
If you select Add test Page, it will create a new page for your module.


16. In Visual studio select DesktopModules/NewsAndEvents/NewsAndEvents.ascx , delete the existing code and add your own Asp.net code


 




17. NewsAndEvents.ascx.cs delete existing code and add Page_Load Event 

 



18. Build and execute the website. You have successfully create a DNN module.

What is Internet Information Services (IIS)

Internet Information Services (IIS) is a web server application and set of feature extension modules created by Microsoft for use with Microsoft Windows. IIS 7.5 supports HTTP, HTTPS, FTP, FTPS, SMTP and NNTP. It is an integral part of Windows Server family of products, as well as certain editions of Windows XP, Windows Vista and Windows 7. IIS is not turned on by default when Windows is installed.

Web Server

   It's a server used to communicate with Web Browsers as its clients and the communication protocol used in this case is HTTP (HyperText Transfer Protocol). This is why a Web Server is also called an HTTP Server.

How Web Server work?

As is the case with any client-server comunication, in this case also the client (i.e., the Web Browser) and the server (i.e., HTTP/Web Server) should be able to communicate with each other in a defined way. This pre-defined set of rules which form the basis of the communication are normally termed as a protocol and in this case the underlying protocol will be HTTP.

You have to enter the URL in your browser.The browser broke the URL into three parts:
  1.     The protocol ("http")
  2.     The server name ("www.example.com")
  3.     The file name ("home.html")
Step1

The browser communicated with a Domain name server to translate the server name "www.example.com" into an IP Address, this is the public IP Address. The browser then formed a connection to the server at this IP address.

Step 2

The browser sent a GET request to the server, asking for the file "http://www.example.com/home.html

Step 3

The server then sent the HTML text for the Web page to the browser.

Internet Information Services (IIS)

IIS has the following Properties

ApplicationPool

It is used to Isolate each application. We have run mor application in our single iis server. We can isolate them into their own AppPool. If one application craches, it doesn't impact the other application.

Port Number
Any server machine makes its services available to the Internet using numbered ports, one for each service that is available on the server.

For Example

Web server would typically be available on port 80, and the FTP server would be available on port 21.

Binding

We can bind the hostname,port no, and IP Address for each application.

Diffreence between Add website and Add Application in IIS


In Add websit, we need to give the unique port no

In Add Application, It takes the own website port no

 

DotNet Framework

.NET Framework is a software framework for Microsoft Windows operating systems. It includes a large library, and it supports several programming languages which allows language interoperability (each language can use code written in other languages). The .NET library is available to all the programming languages that .NET supports.