Tuesday, September 20, 2011

Grid View Sorting When Using Dataset

<asp:GridView ID=" gvSorting " SkinID="GridView" EmptyDataText="No Records to Display" runat="server" AutoGenerateColumns="true" Width="100%" OnSorting="gvSorting_Sorting" AllowSorting="True"></asp:GridView>

In .cs Page

When Binding Grid

gvSorting.DataSource = Dt;
gvSorting.DataBind();
Session["_Dt"] = Dt;
ViewState["Sort_Order"] = "ASC";


protected void gvSorting_Sorting(object sender, GridViewSortEventArgs e)
{
if (ViewState["Sort_Order"].ToString() == "ASC")
RebindData(e.SortExpression, "DESC");
else
RebindData(e.SortExpression, "ASC");
}

private void RebindData(string sColimnName, string sSortOrder)
{
DataTable dt = (DataTable)Session["_Dt"];
dt.DefaultView.Sort = sColimnName + " " + sSortOrder;
gvSorting.DataSource = dt;
gvSorting.DataBind();
ViewState["Sort_Order"] = sSortOrder;
}

Friday, September 16, 2011

How to Create Log File in Asp.Net 2008

1)
Add This in AssemblyInfo
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "Web.config", Watch = true)]
2)
Add This in web.Config
Add This Under </sectionGroup> / After --> Reference

<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
Add This Under </ configSections> / After --> Reference

<log4net debug="true">
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="LogFile\\Log.txt"/>
<appendToFile value="true"/>
<rollingStyle value="Size"/>
<maxSizeRollBackups value="10"/>
<maximumFileSize value="2KB"/>
<staticLogFileName value="true"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%-5p %d %5rms %-22.22c{1} %-18.18M - %m%n"/>
</layout>
</appender>
<root>
<level value="DEBUG"/>
<appender-ref ref="RollingLogFileAppender"/>
</root>
</log4net>
3)
Create one folder Called LogFile

4) Add this Page where you want to catch the Log

private static readonly log4net.ILog Log = log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);

5)
Use log4net dll

Saturday, September 10, 2011

Redirect Url Using Asp Page in IIS

<%
If Request.ServerVariables("SERVER_NAME")="yahoo.com" Then
response.redirect("Yahoo")
Else
response.redirect("Gmail")
End If
%>

Monday, September 5, 2011

Grid Sort Using List & Linq Concepts

<asp:GridView ID="gvResults" runat="server" AutoGenerateColumns="false" CssClass="list"
GridLines="None" AllowSorting="True" OnSorting="gv_Sorting" meta:resourcekey="gvResultsResource1"
OnRowDataBound="gvResults_RowDataBound" AllowPaging="false">
<Columns>
<asp:BoundField HeaderText="No" DataField="id" SortExpression="id" HeaderStyle-CssClass="center">
<HeaderStyle CssClass="center" />
</asp:BoundField>
<asp:TemplateField SortExpression="priority" meta:resourcekey="TemplateFieldResource1">
<ItemTemplate>
<div class="color_it" style="background: <%# urgency[Int32.Parse(Eval("priority").ToString())] %>">
 <%# Eval("priority1.priority_name") %></div>
</ItemTemplate><HeaderStyle Width="60px"></HeaderStyle>
</asp:TemplateField>
<asp:TemplateField SortExpression="title" meta:resourcekey="TemplateFieldResource2">
<ItemTemplate>
</ItemTemplate>
<HeaderStyle Width="380px"></HeaderStyle>
</asp:TemplateField>
<asp:TemplateField HeaderText="SubGroup" SortExpression="SubGroup">
<ItemTemplate>
<asp:Label ID="lblSubGroupbyId" Visible="false" Text='<%# Eval("assigned_to_group") %>' runat="server"></asp:Label>
<asp:Label ID="lblSubGroupby" runat="server"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="AssignedTo" SortExpression="Assign_To">
<ItemTemplate>
<asp:Label ID="lblAssignedbyId" Visible="false" Text='<%# Eval("Assign_To") %>' runat="server"></asp:Label>
<asp:Label ID="lblAssignedby" runat="server"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="ExpectedDate" SortExpression="ExpectedDate" DataFormatString="{0:d}"
HtmlEncode="False" HeaderText="Expected Date">
<HeaderStyle Width="120px" />
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:TemplateField HeaderText="Raisedby" SortExpression="Ticket_rasied">
<ItemTemplate>
<asp:Label ID="lblRaisedbyId" Visible="false" Text='<%# Eval("Ticket_rasied") %>' runat="server"></asp:Label>
<asp:Label ID="lblRaisedBy" runat="server"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Center" SortExpression="Center">
<ItemTemplate>
<%# GetCenterName(Convert.ToInt32(Eval("Center")))%>
</ItemTemplate> </asp:TemplateField>
<asp:BoundField DataField="submitted" SortExpression="submitted" DataFormatString="{0:d}" HtmlEncode="False" meta:resourcekey="BoundFieldResource1">
<HeaderStyle Width="80px" />
<ItemStyle HorizontalAlign="Center" /> </asp:BoundField>
<asp:TemplateField SortExpression="status" meta:resourcekey="TemplateFieldResource3">
<ItemTemplate>
<div class="color_it" style="width: 83px; text-align: center;">
<%# Eval("statuse.status_name") %></div> </ItemTemplate>
<HeaderStyle CssClass="center" HorizontalAlign="Center" />
</asp:TemplateField>
</Columns>
</asp:GridView>
-----
protected void gv_Sorting(object sender, GridViewSortEventArgs e)
    {
IEnumerable<ticket> searchResults = IEnumerable<ticket>)Session["searchResults"];
GridView gv = (GridView)sender;
if (Session[e.SortExpression] == null || Session[e.SortExpression].ToString().Equals("+"))
{
Session[e.SortExpression] = "-";
switch (e.SortExpression)
{
case "priority": searchResults = from p in searchResults orderby p.priority1.level ascending select p; break;
case "title": searchResults = from p in searchResults orderby p.title ascending select p; break;
case "submitted": searchResults = from p in searchResults orderby p.submitted ascending select p; break;                case "status": searchResults = from p in searchResults join s in db.statuses on p.ticket_status equals s.id orderby s.status_name ascending select p; break;
case "Assign_To": searchResults = from p in searchResults join u in db.users on p.Assign_To equals u.id orderby u.userName ascending select p; break;
case "Ticket_rasied": searchResults = from p in searchResults join u in db.users on p.Ticket_rasied equals u.id orderby u.userName ascending select p; break;
case "id": searchResults = from p in searchResults orderby p.id ascending select p; break;
case "Center": searchResults = from p in searchResults join c in db.Centers on p.Center equals c.id orderby c.Center_name ascending select p; break;
case "ExpectedDate": searchResults = from p in searchResults orderby p.ExpectedDate ascending select p; break;
case "SubGroup": searchResults = from p in searchResults orderby p.assigned_to_group ascending select p; break;
default: break;
}
}
else
{
Session[e.SortExpression] = "+";
switch (e.SortExpression)
{
case "priority": searchResults = from p in searchResults orderby p.priority1.level descending select p; break;                case "title": searchResults = from p in searchResults orderby p.title descending select p; break;
case "submitted": searchResults = from p in searchResults orderby p.submitted descending select p; break;                case "status": searchResults = from p in searchResults join s in db.statuses on p.ticket_status equals s.id orderby s.status_name descending select p; break;
case "Assign_To": searchResults = from p in searchResults join u in db.users on p.Assign_To equals u.id orderby u.userName descending select p; break;
case "Ticket_rasied": searchResults = from p in searchResults join u in db.users on p.Ticket_rasied equals u.id orderby u.userName descending select p; break;
case "id": searchResults = from p in searchResults orderby p.id descending select p; break;
case "Center": searchResults = from p in searchResults join c in db.Centers on p.Center equals c.id orderby c.Center_name descending select p; break;
case "ExpectedDate": searchResults = from p in searchResults orderby p.ExpectedDate descending select p; break;
case "SubGroup": searchResults = from p in searchResults orderby p.assigned_to_group descending select p; break;
default: break;
}
}
gv.DataSource = searchResults;
gv.DataBind();
}