Sharepoint Top 10 Codeplex project for Developers

Hi Everyone,

Here is my top 10 sharepoint codeplex project for Developers :

1)  Sharepoint 2010 Fluent Ribbon Api:
Fluent API for Ribbon creation in SharePoint 2010. Create and manage your ribbon without unpredictable xml or typo-prone “magic strings”
http://spribbon.codeplex.com/

2)  jQuery Library for SharePoint Web Services
This is a jQuery library which abstracts SharePoint’s Web Services and makes them easier to use. It also includes functions which use the various Web Service operations to provide more useful (and cool) capabilities. It works entirely client side and requires no server install.
http://spservices.codeplex.com/

3) SharePoint Developer Tools for Visual Studio 2010
this project extends the Visual Studio 2010 SharePoint Project system with advanced templates and tools. Using these extensions you will be able to find relevant information easily without leaving Visual Studio. You will have an easier time developing SharePoint components and you will have broader capabilities to deploy them on your test environment.
http://sharepointdevtools.codeplex.com/

4) SP List Kit for SharePoint 2010
SP List Kit for SharePoint 2010 is rich feature set to enhance usability of all SharePoint Lists. It supports SharePoint 2010. All of SP List Kit support Sandboxed Solutions and SharePoint Online for Office 365
http://splistkit.codeplex.com/

5) Sharepoint Form Generator for (2007)
The SharePoint Form Generator
allow all users to add entries to the list, and can be used to generate rich UI forms with field validation to be embed in your pages. The Web Part supports all types of columns used in SharePoint lists.
http://sfg.codeplex.com/

6)  Sharepoint Search Service Tool
The SharePoint Search Service Tool is a rich web service client that allows a developer to explore the scopes and managed properties of a given SharePoint Search SSP, build queries in either Keyword or SQL Syntax, submit those queries and examine the raw web service results. This tool can be useful in troubleshooting and verifying the behavior and configuration of a SharePoint environment.
http://sharepointsearchserv.codeplex.com/

7) Show or Hide SharePoint 2010 ribbon based on SharePoint Groups
This SharePoint 2010 solution allow site administrator to define who can or cannot see the SharePoint ribbon.
http://spribbonvisibility.codeplex.com/

8) Useful Sharepoint Designer Custom Workflow Activities
This project takes aim at making it easier to create advanced workflows using Sharepoint Designer by providing a set of custom workflow activities
Send Email with HTTP File attachment ,Send Email with List Item attachments ,Start Another Workflow ,Grant Permission on Item ,Delete List Item Permission Assigment ,Reset List Permissions Inheritance,Is User a member of a SharePoint group ,Is Role assigned to User ,Lookup user info
http://spdactivities.codeplex.com/ 

9) My Masters Sample Project for Sharepoint 2010
The feature stapling example project which is provide to deploy custom master page to personel sites on Sharepoint 2010
The solution is anwering fallowing questions :
* How to deploy a custom master page ?
* How to customize a masterpage ?
* How to attach custom master page to personal sites using stapling feature ?
* How to set wellcome page programmatically ?
* How to add document library as a web part to a page ?
http://mymasters.codeplex.com/

10) SharePoint 2010 Search Results Customization 
By using this XSLT code, You can customize the SharePoint 2010 Search results from regular format to Tabular format.
http://sharepoint2010search.codeplex.com/

MOSS2007 + SP2 (Turkish) Calculated Column not accepting METİN formula

Hi Everyone,

if you try suggested formula  for Sharepoint Calculated Column (MOSS2007 with Turkish Language Pack)  on fallowing official article http://office.microsoft.com/tr-tr/sharepoint-foundation-help/HA010379915.aspx and the help document of wss like
=”Ekstre tarihi: “&METİN([Sütun2], “gg-aa-yyyy”)

is not working  and getting error of “Söz dizimi hatası”

Cause :Should be a documentation error .

The formula should be “METNEÇEVİR” instead of “METİN” and the splitter should be “;” instead of “,”

Here is the correct version of formula:
=”Ekstre tarihi: “&METNEÇEVİR([Sütun2];”gg-aa-yyyy”)

You may getting some errors for other formulas please read fallowing warning and always keep in mind:

“All example formulas in this topic use commas “,” as the parameter delimiter character. In some countries, the comma is reserved for use as the decimal mark. In such countries, users creating a calculated field must use semi-colons “;” as the delimiter character. Regardless of which character is used when the field is created, the formula works on lists in SharePoint websites anywhere in the world. SharePoint automatically changes the delimiter character to the one that is appropriate for the language/culture of the current page. For example, suppose the following formula is created on a website whose culture setting is fr-fr (France): =IF(Number1>Number2;5;10). If the website’s culture is then changed to en-us (United States), the formula changes automatically to: =IF(Number1>Number2,5,10).”
http://msdn.microsoft.com/en-us/library/bb862071.aspx

c# Multiple WebRequest and WebResponse timeout problems.

Hi Everyone ,

In this tips and tricks article i wanna talk about when we use Multiple WebRequest object for interacting some urls getting timeout errors even if remote server not busy.
this is usually caused by not dispose some open WebResponse objects.You can also use “using” statement for disposing unnecessery objects .

For good example :

WebRequest wrGETURL;
wrGETURL = WebRequest.Create(sURL);
// wrGETURL.Proxy = myProxy;

durationTime = DateTime.Now;

using
(HttpWebResponse response = (HttpWebResponse)wrGETURL.GetResponse())
{
status = response.StatusCode.ToString();
TimeSpan ts = DateTime.Now – durationTime;
duration = ts.TotalMilliseconds.ToString();
}

Getting null reference exception when try to open list settings (Listedit.aspx) for Sharepoint 2010

This is a typical  error scenario that you have if you move or copy some sharepoint core dll’s which is referenced fr0m another folder.There is common mistake when developing custom applications that moving and copying sharepoint core dll’s to where is not in original folder (for example coping Microsoft.Sharepoint.dll to BIN folder of web application)  or unnecesserly register in GAC (for example registering Microsoft.Sharepoint.ApplicationPages.dll to GAC).

Why is this dangerous ? i can simply say when you upgrade or install any patch on sharepoint , the copied dlls form original location  can not be upgraded  by default .So this cause a huge anomality in your system. DLL version integrity is very important issue for every Microsoft product. So be careful for this operations , after all if you still need to copy or move operation, that upgrading copied dlls is your responsibility.

So lets keep going with our error :

when you click the one of list’s list settings (listedit.aspx) you can probably getting fallowing error in application event logs:

Exception information:
Exception type: NullReferenceException
Exception message: Object reference not set to an instance of an object.

Stack trace:    at Microsoft.SharePoint.ApplicationPages.ListEditPage.SetSectionLinks()
at Microsoft.SharePoint.ApplicationPages.ListEditPage.OnLoad(EventArgs e)
at ASP._layouts_listedit_aspx.OnLoad(EventArgs e) in c:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\LAYOUTS\listedit.aspx:line 25
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

And if you enable custom errors from  in your web.config which is in Layouts folder.You can see the error in browser:

NullReferenceException: Object reference not set to an instance of an object.]
Microsoft.SharePoint.ApplicationPages.ListEditPage.SetSectionLinks() +426
Microsoft.SharePoint.ApplicationPages.ListEditPage.OnLoad(EventArgs e) +896
ASP._layouts_listedit_aspx.OnLoad(EventArgs e) +290
System.Web.UI.Control.LoadRecursive() +65
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2427

For resolving this issue you should find the related copied assembly files which according this scenario is Microsoft.Sharepoint.ApplicationPages.dll in use for unfamiliar locations.

the orginal location for this dll is  Drive:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\CONFIG\BIN

1) First Check the GAC this dll should not be added to GAC if it is upgrade latest correct version or delete the dll.
2) Check other possible existance may it be used in BIN folders of web applications. For getting all list of any dll location you can use this script:
https://blog.bugrapostaci.com/2011/12/26/powershell-find-files-with-versions/ this powershell command gives you a list that defined dll locations and versions.

For best practise if you need any reference to Sharepoint DLL’s use and reference them in original locations .if not you always remember to upgrade latest versions where it have been that is your resposibility.

See you next time.

 

 

 

 

 

 

Powershell find files with versions.

If you are searching all same files and versions in your drive you can user fallowing powershell command:

get-childitem -Recurse | where-object { $_.Name -eq “Microsoft.Sharepoint.ApplicationPages.dll” } |%{ $_.VersionInfo }| select * > c:\FileVersions.txt