Monday, July 14, 2014

Creating Schema

What is Schema ? 
A database schema is a way to logically group objects such as tables, views, stored procedures etc. Think of a schema as a container of objects.
You can assign a user login permissions to a single schema so that the user can only access the objects they are authorized to access.
Schemas can be created and altered in a database, and users can be granted access to a schema. A schema can be owned by any user, and schema ownership is transferable.
Create New Schema
Goto Security option of desired database -->Right Click --> New  --> Schema
Now in opened window write your schema name and click OK
To check your created schema goto Security ---> Schema.

Now its Time to Add schema to the table.For this goto the properties window of desired table, in schema option change the schema. By default schema is dbo.

To see the effect Refresh Tables the view the result.

Substring Function

Substring Function
For any function there arises three basic question--:
1. What does it mean?
2. Why is this?
3. How it works?
What does it mean?
As we see SubString is a combination of two words "Sub" and "String".
String-: In Computer Science String  means "A set of consecutive characters".
Sub   -: Sub is basically a Latin prefix which has several meaning but the best suitable meaning for here is "part of".
So, Substring means "Part of a string".
Why is this?
So, from definition its clear that the work of substring is to extract a part of string.
How it works?
Syntax : Substring(index,length)
            Here index denotes the postion from where you want to extract the string andlength denotes up to how much character you need to extract.Both contains integer value.
Example :
        int ind = Convert.ToInt32(txtIndex.Text);
        int len = Convert.ToInt32(txtLength.Text);
        Literal1.Text = TextBox1.Text.Substring(ind,len); 

How To get Row Value And Column Value From DataSet

 if(ds.Tables[0].Rows[0][0].ToString()=="1")
        {
            for (int i = 0; i < ds.Tables[0].Columns.Count; i++)
            {
                if (ds.Tables[0].Rows[0][i].ToString() != "")
                {
                    Label l = new Label();
                    l.ID = "ll" + i;
                    l.Text =  "username"+ i;
                    form1.Controls.Add(l);

                }
           
            } 
        }

=============================================================================
string countryName = "USA";
        DataTable dt = new DataTable();
        int id = (from DataRow dr in dt.Rows
                  where (string)dr["CountryName"] == countryName
                  select (int)dr["id"]).FirstOrDefault();

=========================================================================================

query = "SELECT [EnrollmentNo] FROM [vw_NewAttenInfo]";
SqlDataAdapter adp = new SqlDataAdapter(query,con);
DataSet ds = new DataSet();
adp.Fill(ds);
for (int i = 0; i < ds.Tables[0].Rows.Count;i++)
{
…………
…………
string st = ds.Tables[0].Rows[i]["EnrollmentNo"].ToString();
……
……
}

=======================================================================================


What is the use of Global.asax file events in asp.net

The Global.asax file, also known as the ASP.NET application file, is an optional file that contains code for responding to application-level events raised by ASP.NET or by HttpModules.

The Global.asax file resides in the root directory of an ASP.NET-based application. The Global.asax file is parsed and dynamically compiled by ASP.NET.


The Global.asax file itself is configured so that any direct URL request for it is automatically rejected; external users cannot download or view the code written within it.

The Global.asax file does not need recompilation if no changes have been made to it. There can be only one Global.asax file per application and it should be located in the application's root directory only.
The Global.asax contains two types of events those are

Events which are not fired for every request

Application_Start() – This event raised when the application starts up and application domain is created.

Session_Start() – This event raised for each time a new session begins, This is a good place to put code that is session-specific.

Application_Error() – This event raised whenever an unhandled exception occurs in the application. This provides an opportunity to implement generic application-wide error handling.

Session_End() – This event called when session of user ends.

Application_End() – This event raised just before when web application ends.

Application_Disposed() – This event fired after the web application is destroyed and this event is used to reclaim the memory it occupies.




Events which are fired for every request

Events which are not fired for every request

Application_BeginRequest() – This event raised at the start of every request for the web application.

Application_AuthenticateRequest – This event rose just before the user credentials are authenticated. We can specify our own authentication logic here to provide custom authentication.

Application_AuthorizeRequest() – This event raised after successful completion of authentication with user’s credentials. This event is used to determine user permissions. You can use this method to give authorization rights to user.

Application_ResolveRequestCache() – This event raised after completion of an authorization request and this event used in conjunction with output caching. With output caching, the rendered HTML of a page is reused without executing its code.

Application_AcquireRequestState() – This event raised just before session-specific data is retrieved for the client and is used to populate Session Collection for current request.

Application_PreRequestHandlerExecute() – This event called before the appropriate HTTP handler executes the request.

Application_PostRequestHandlerExecute() – This event called just after the request is handled by its appropriate HTTP handler.

Application_ReleaseRequestState() – This event raised when session specific information is about to serialized from the session collection.

Application_UpdateRequestCache() – This event raised just before information is added to output cache of the page.


Application_EndRequest() – This event raised at the end of each request right before the objects released.

simple example in Global.asax


First Open visual Studio ---> Create New Website after that right click on Solution explorer and select new item

After select Add New Item window will open in that select Global Application Class and click ok

After add file open Global.asax file and add following code in Global.asax file
<%@ Application Language="C#" %>
<%@ Import Namespace="System.IO" %>

<script runat="server">
protected void Application_Start(object sender, EventArgs e)
{
// Code that runs on application startup
WriteFile("Application Starting");
}
protected void Application_End(object sender, EventArgs e)
{
//  Code that runs on application shutdown
WriteFile("Application Ending");
}
protected void Application_Error(object sender, EventArgs e)
{
// Code that runs when an unhandled error occurs
string strError;
strError = Server.GetLastError().ToString();
if(Context!=null)
{
Context.ClearError();
Response.Write("Application_Error" + "<br/>");
Response.Write("<b>Error Msg:</b>" + strError + "<br/>"+"<b>End Error Msg<b/>");
}
}
protected void Session_Start(object sender, EventArgs e)
{
// Code that runs when a new session is started
Response.Write("Session_Start" + "<br/>");
}

protected void Session_End(object sender, EventArgs e)
{
// Code that runs when a session ends.
// Note: The Session_End event is raised only when the sessionstate mode
// is set to InProc in the Web.config file. If session mode is set to StateServer
// or SQLServer, the event is not raised.
Response.Write("Session_End"+"<br/>");
}
protected void Application_BeginRequest(object sender,EventArgs e)
{
Response.Write("Application_BeginRequest" + "<br/>");
}
protected void Application_EndRequest(object sender, EventArgs e)
{
Response.Write("Application_EndRequest" + "<br/>");
}
protected void Application_AcquireRequestState(object sender, EventArgs e)
{
Response.Write("Application_AcquireRequestState" + "<br/>");
}
protected void Application_AuthenticateRequest(object sender, EventArgs e)
{
Response.Write("Application_AuthenticateRequest" + "<br/>");
}
protected void Application_AuthorizeRequest(object sender, EventArgs e)
{
Response.Write("Application_AuthorizeRequest" + "<br/>");
}
protected void Application_PostRequestHandlerExecute(object sender, EventArgs e)
{
Response.Write("Application_PostRequestHandlerExecute" + "<br/>");
}
protected void Application_PreRequestHandlerExecute(object sender, EventArgs e)
{
Response.Write("Application_PreRequestHandlerExecute" + "<br/>");
}
protected void Application_PreSendRequestContent(object sender, EventArgs e)
{
Response.Write("Application_PreSendRequestContent" + "<br/>");
}
protected void Application_PreSendRequestHeaders(object sender, EventArgs e)
{
Response.Write("Application_PreSendRequestHeaders" + "<br/>");
}
protected void Application_ReleaseRequestState(object sender, EventArgs e)
{
Response.Write("Application_ReleaseRequestState" + "<br/>");
}
protected void Application_ResolveRequestCache(object sender, EventArgs e)
{
Response.Write("Application_ResolveRequestCache" + "<br/>");
}
protected void Application_UpdateRequestCache(object sender, EventArgs e)
{
Response.Write("Application_UpdateRequestCache" + "<br/>");
}
protected void Application_Disposed(object sender, EventArgs e)
{
Response.Write("Application_Disposed"+"<br/>");
}
public void WriteFile(string strText)
{
StreamWriter strWriter = new StreamWriter(@"C:test.txt"true);
string str = DateTime.Now + " " + strText;
strWriter.WriteLine(str);
strWriter.Close();
}
</script>

After adding code in Global.asax open your website aspx page and design your aspx page like this

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Global Events Demo</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<h1>Global Events</h1>
<asp:Button ID="btnEndSession" runat="server" Text="End Session" onclick="btnEndSession_Click" />
<asp:Button ID="btnError" runat="server" Text="Generate Error" onclick="btnError_Click" />
</div>
</form>
</body>
</html>
After that write the following code in code behind
protected void btnEndSession_Click(object sender, EventArgs e)
{
Session.Abandon();
}
protected void btnError_Click(object sender, EventArgs e)
{
int a = 5;
int b = 0;
int c=a / b;
}