Wednesday, August 26, 2015

SharePoint 2016 - Server Role Configuration simplified


New Hybrid feature configuration on every site collection in SharePoint 2016.




One remarkable change in the SharePoint 2016 installation method from its predecessor is , now SharePoint 2016 installation allows you to choose the server role on the SharePoint farm.

Earlier version, you have to do manually , I mean you need to come up with capacity plan and design plan before elevating the SharePoint server for each role.

Configuring the DSN, Alternate Access Map , identifying the service application to scale out to different server , really its hectic process for SharePoint Farm admin.

Now SharePoint 2016, simplified this during  installation.
SharePoint 2016 Server Roles are

Front End
Application
Distribute Cache
Search
Custom

and the Single Server Farm.









Tuesday, August 25, 2015

SharePoint Hosted App - JSOM CRUD

Download the code from MSDN Gallery


You might find useful to start learning on SharePoint hosted app development using Javascript object model.

Here I have implemented the simple registration form with CRUD operation.
There will be a html table to bind the all SharePoint list items and each row will contains the link to delete and edit the corresponding record.

To wrap up the simple app, I have used the jQuery Modal dialog to show the details for update and delete confirmation.

You will find the useful code snippets on how to retrieve and populates the values in checkbox / dropdown list using jQuery.

And also how to bind the click events to the link or cell in this application.




Sunday, August 16, 2015

SharePoint 2013 - Internal Column name format

I am not sure, whether my finding is true to all the list in SharePoint 2013, all column name specification or format is entirely different then its predecessor.

If you are hard code developer and familiar with inserting/deleting/ and updating the item through APIs, you might seen the columns name that comes with space between word.
Example, Employee Name (Display Name) When you deal this column in code,
The SharePoint 2010, change this column to Employee_x200_Name for identifying uniquely with in the list.

In SharePoint 2013,I create the list based on the List template, and noticed the internal name was entirely different, and SP2013 generates the internal name with random of four alphabetic





Friday, August 07, 2015

My first experience with Github

I am so happy today to learn and experiencing the cloud based new source control "Github". Still so many things there to learn and become a expert on this source control application.
Hopefully I will learn about how to run the command line to sync the my personal local project work to Github and publishing for the public in coming days.

My Github experience

DataTable row compare in C#

Here is the simple workaround to find the unique record from the source.
You must have two equal IEnumerable collection.

In Linq,we can use the "Except" method

In this example, I have 2 sample xml file that contains the records of books details such as book name,author and id.

In second XML has one new record, and wanted to output the new record in grid.

           DataSet ds = new DataSet();
            DataSet ds1 = new DataSet();
            ds.ReadXml(@"D:\Books.xml");


            bookgrd.DataSource = ds.Tables[0];
            bookgrd.DataBind();

            IEnumerable tbl1row = ds.Tables[0].AsEnumerable();
            ds1.ReadXml(@"D:\Books2.xml");


            
            IEnumerable tbl2row = ds1.Tables[0].AsEnumerable();
            GridView1.DataSource = ds1.Tables[0];
            GridView1.DataBind();
           
            var items = tbl2row.AsEnumerable().Select(r => r.Field("id"))
           .Except(tbl1row.AsEnumerable().Select(r => r.Field("id")));



            DataTable uniqueRow = (from row in tbl2row.AsEnumerable()
                                join id in items
                                on row.Field("id") equals id
                                select row).CopyToDataTable();

            GridView2.DataSource = uniqueRow;
            GridView2.DataBind();