Skip to main content

SharePoint 2010 Extension methods


SharePoint 2010 Extension methods

What is extension methods?

Extension methods:- Extension methods enable you to "add" methods to existing types without creating a new derived type, recompiling, or otherwise modifying the original type. Extension methods are a special kind of static method, but they are called as if they were instance methods on the extended type. For client code written in C# and Visual Basic, there is no apparent difference between calling an extension method and the methods that are actually defined in a type.

The most common extension methods are the LINQ standard query operators that add query functionality to the existing types.

SharePoint 2010 Extension : I am going to Share you some useful SharePoint 2010 Extension method. All of them very useful. It will help you and solve your problems.

Following the list of the useful extension functions are
  • InUserGroup
  • IsUserExist
  • IsListExist
  • GetFieldTitle
  • GetFieldValueUserLogin
  • SetFieldValueUser
And may more extension methods.

Following the sample code to see the more extension methods download the full code.

using System;
using System.Collections.Generic;
using System.Windows.Forms;
using Microsoft.SharePoint;

namespace SharePoint2010Extension
{
    public partial class SPExtension : Form
    {
        public SPExtension()
        {
            InitializeComponent();
        }
        string _CurrentUser = @"HOME\Administrator";

        private void ExtensionTest_Click(object sender, EventArgs e)
        {
            string siteUrl = "http://localhost/";

            using (SPWeb _web = new SPSite(siteUrl).OpenWeb())
            {
                //GetListFieldNameWithDisplayName(_web, true);

                SetUrlValueExtension(_web);
                //SharePointListExist(_web);
                //UserIngroup(_web);
                //UserExistInSite(_web);

            }
        }

        private void UserExistInSite(SPWeb _web)
        {
            if (_web.IsUserExist(_CurrentUser))
            {
                MessageBox.Show("User exist");
            }
            else
            {
                MessageBox.Show("User not exist");
            }
        }

        /// <summary>
        /// it is for moss 2007
        /// </summary>
        /// <param name="_web"></param>
        public void SharePointListExist(SPWeb _web)
        {
            SPList SharepointList = _web.IsListExist("Customer");

            if (SharepointList != null)
            {
                MessageBox.Show("List Exist");
            }
            else
            {
                MessageBox.Show("List Not Exist");
            }

        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="_web"></param>
        public void UserIngroup(SPWeb _web)
        {
            if (lstSecurityGroup.Items.Count > 0)
            {
                SPUser _UserName = _web.SiteUsers[_CurrentUser];

                if (_UserName.InUserGroup(lstSecurityGroup.SelectedItem.ToString()))
                {
                    MessageBox.Show("User exist in group:" + lstSecurityGroup.SelectedItem.ToString());
                }
                else
                {
                    MessageBox.Show("User not exist in group:" + lstSecurityGroup.SelectedItem.ToString());
                }
            }
            else
            {
                MessageBox.Show("Please first bind the site groups in list");
            }

        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="_web"></param>
        public void GetAllGroups(SPWeb _web)
        {

            lstSecurityGroup.Items.Clear();
            List<string> _items = new List<string>();

            foreach (SPGroup item in _web.Groups)
            {
                _items.Add(item.Name);

            }
            lstSecurityGroup.DataSource = _items;
        }
         
        private void btnbindusers_Click(object sender, EventArgs e)
        {
            string siteUrl = "http://localhost/";

            using (SPWeb _web = new SPSite(siteUrl).OpenWeb())
            {
                GetAllGroups(_web);
            }

        }

        public void GetListFieldNameWithDisplayName(SPWeb web, bool isList)
        {
            SPList SharepointList = web.IsListExist("Customer City");
            if (isList)
            {


                if (SharepointList != null)
                {
                    //example column Internal name "test" and display name "text col"
                    MessageBox.Show(SharepointList.GetFieldTitle("test"));
                }
            }
            else
            {
                if (SharepointList != null)
                {
                    SPListItem item = SharepointList.Items.GetItemById(1);
                    MessageBox.Show(item.GetFieldTitle("test"));
                   
                }

            }
        }


        public void SetUrlValueExtension(SPWeb web)
        {
            SPList SharepointList = web.IsListExist("Links");

            if (SharepointList != null)
            {
                //example column Internal name "test" and display name "text col"
                SPListItem _item = SharepointList.AddItem();
                _item.SetFieldValueUrl("URL", "http://google.com", "Google");
                _item.Update();

            }
          
        }

    }
}

You can download the Sample Code to click the following folder image link.


Feel free to ask any question

Comments

Popular posts from this blog

SharePoint RPC Protocols Examples Using OWSSVR.DLL

What is SharePoint RPC Protocols? Part 1 This reference includes information about the methods and usage of SharePoint Foundation Remote Procedure Call (RPC) protocol. This protocol can be used in Win32-based applications or in ASPX applications to make HTTP POST requests to the server. Methods in this protocol that do not modify the contents of the database can also be used in URL protocol to make HTTP GET requests. Definition taken from http://msdn.microsoft.com/en-us/library/ms448359.aspx You will find the OWSSVR.DLL in SharePoint 2010 Server Physical Path: C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\ISAPI and MOSS C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\ISAPI OWSSVR.DLL List of commands DialogView  Display ExportList GetProjSchema GetUsageBlob HitCounter RenderView To read more about the OWSSVR.DLL command Please read the URL Protocol from Microsoft Blog having a URL http://msdn.microsoft.com/en...

SharePoint 2013 Search Database Part 1

SharePoint 2013 Search architecture drastically change, as earlier in FS4SP 2010 we have 2 search applications “FASTContentSSA” and “FASTQuerySSA” and 7 total database in use. Following are the List of DB (FS4SP) FASTContentSSA Search Service Application DB Search Service Application Crawl Store DB Search Service Application Property Store DB FASTQuerySSA Search Service Application DB Search Service Application Crawl Store DB Search Service Application Property Store DB FASTSearchAdminDatabase : Fast Search Admin Database  In SharePoint 2013 search has only 1 Search Service application and 4 database in use. No property store database need any more, now the properties are directly stored inside the index component and all the index directly indexed to the physical system where FS4SP data comes from database as well as from the File system now data directly stored and indexed/ retried from the Physical disk because of this performance increase and search experien...

STS CryptographicException Error : Key set does not exist

Common mistakes Both SharePoint Site and SSO Site NOT running on the same application pool. Application pool identity user doesn’t have permission to access the certification.  Solution to this problem Set the same identity pool to  : 2. Be sure to grant rights to the certificate for the App Pool running the web service Start -> Run -> MMC File -> Add/Remove Snapin Add the Certificates Snap In Select Computer Account, then hit next Select Local Computer (the default), then click Finish On the left panel from Console Root, navigate to Certificates (Local Computer) -> Personal -> Certificates You're certificate will most likely be here. Right click on your certificate -> All Tasks -> Manage Private Keys Set you're private key settings here. Add app pool account Reset iis