by David Loo | Dec 1, 2014 | Sharepoint Development
To create a new site collection on SharePoint 2013 server, open Central Administration and under the Application Management section select Create site collections:
Enter a Title and Description for your site, so for the title I am using Demo Site 1. Web Site Address you may select an alternative URL Path or use the default URL Path sites and then enter your URL name, for this demonstration I will use DemoSite1.
(more…)
by David Loo | May 27, 2010 | ASP.NET, Web Development
Recently I just did a small job for a client online using IComparer interface to perform sorting on a GridView control.
First I need to create class called Person. This class is going to contain the following properties: FirstName, LastName, Age.
public class Person
{
private string _firstName;
private string _lastName;
private int _age;
public string FirstName
{
get { return _firstName; }
set { _firstName = value; }
}
public string LastName
{
get { return _lastName; }
set { _lastName = value; }
}
public int Age
{
get { return _age; }
set { _age = value; }
}
}
Now I need to create a class called PersonComparer that will inherit from the IComparer interface. This comparer class will be use with the Sort() method from a List collection.
using System.Collections;
using System.Collections.Generic;
using System.Reflection;
using System;
public class PersonComparer:IComparer
{
private string _sortBy;
public string SortBy
{
get { return _sortBy; }
set { _sortBy = value; }
}
public int Compare(Person x, Person y)
{
int result = 0;
string propName = string.Empty;
string sortDirection = "ASC";
if (_sortBy.Contains(" DESC"))
{
propName = _sortBy.Replace(" DESC", string.Empty).Trim();
sortDirection = "DESC";
}
if (_sortBy.Contains(" ASC"))
{
propName = _sortBy.Replace(" ASC", string.Empty).Trim();
sortDirection = "ASC";
}
// Get type of Person Object
Type t = typeof(Person);
// Find the property name from the sortExpress passed in SortBy property.
PropertyInfo propInfo = t.GetProperty(propName);
if (propInfo != null)
{
// Perform comparison on property value.
result = Comparer.DefaultInvariant.Compare(propInfo.GetValue(x, null), propInfo.GetValue(y, null));
if (sortDirection.Equals("DESC"))
{
result = -result;
}
}
return result;
}
}
(more…)