Get SPList By URL In C#

There was a question posted in the development newsgroups about how to structure a different SPList return method then the orthodox SPWeb.GetList method out of the Microsoft.SharePoint namespace. Here is one that I use, which has some slight enhancements.

[csharp]

public SPList ReturnListByUrl(string strPath)
{
if (strPath.ToLower().StartsWith(“http”))
{
strPath = strPath.Substring(m_oWeb.Url.Length + 1);
if (strPath.ToLower().StartsWith(“lists”))
{
strPath = strPath.Substring(6);
}
}
if (strPath.IndexOf(“/”) > 0)
{
strPath = strPath.Substring(0, strPath.IndexOf(“/”));
}
return m_oWeb.Lists[HttpUtility.UrlDecode(strPath)];
}

[/csharp]

Share

8 thoughts on “Get SPList By URL In C#”

  1. Method, described in the article will not work for international lists because there list names and relative paths are not the same:
    example: My библиотека
    but relative path will be the following:
    /lists/my/

    so the best solution is to use SPWeb.GetList method. But be careful – you must use ABSOLUTE path rather than relative as described in MSDN – it’s mistake.

  2. If we change the list title from list settings, list name will be new title but list url will be the previous name of list( if we change from shrepont designer both will change).

    In this case above code will not work!!

Leave a Reply

Your email address will not be published. Required fields are marked *