Announced at the “Future of SharePoint” event, was the SharePoint Framework. And it is in public beta since this week! I was one of the lucky persons who had access to the internal repository, so I already had a play with it before. Unfortunately I could not blog about it, as it was under NDA. I will talk about how it will fit into the existing SharePoint development infrastructure, and start with some history 🙂
We had the requirement to embed a Yammer poll in SharePoint. This poll would be shown on the homepage of an Office 365 portal. With the Yammer WebPart deprecated, there are two options: Use the REST API, or use the Yammer Embed. We initially tried it with the Yammer Embed, but that is too limited. It only allows to display a certain feed, and has no filter options. The only way to show only one item is to use a Topic feed, and only tag one poll with that Topic. Another showstopper was that we could not apply our styling to the Yammer embed, as it’s hosted in an iframe with no options to style it. It was also annoying that the user had to log in / authenticate every time the browser was closed & reopened.
On the other hand, the REST API has no official documentation around polls. It is possible to retrieve the poll(s), but officially it’s not possible to submit votes. However, I found a solution with the REST API and impersonation with a server-side stored token. This would mean that a user would not have to log in, it would always work.
There are three steps:
- Create a Yammer App
- Retrieve a test access token as a Yammer Network Admin
- Create a SharePoint Provider Hosted add-in, in my case I’ve chosen for MVC.
When querying a list with more than 2000 items, you can use the ContentIterator class which should eliminate the SPQueryThrottledException.
Don’t forget one thing: Add the columns in the WHERE-query to the indexed columns. If you don’t do that, you will still get a SPQueryThrottledException
Edit: We found out that indexed columns where not the solution either, because SharePoint throws the SPQueryThrottledException when trying to build up the indices….
We finally solved all problems by just iterating through all list items and doing our things. We could not find a proper solution, let me know if you managed to find one!
Case: custom masterpage, moved around the ribbon, site actions, etc. Testing: clicking on ribbon tabs hides ribbon totally.
The problem: Visual Studio 2010 solution, modules with Page Layouts, etc. Changes in Page Layouts were not updated after deployment. Old version kept on showing up.
I tried to create a web template from scratch through Visual Studio 2010. This article explains it in full detail. After creating an empty element, adding it to a feature, I got the following error:
Error occurred in deployment step ‘Add Solution’: Elements of type ‘WebTemplate’ are not supported at the ‘Farm’ scope. This feature could not be installed.
When you execute a SPSiteDataQuery with some filter-fields and you receive no results, while you expect some, please add the filter-fields also to the view-fields….
After creating a console application to connect to SharePoint through the API, the following error can occur:
The Web application at http://intranet.local could not be found. Verify that you have typed the URL correctly. If the URL should be serving existing content, the system administrator may need to add a new request URL mapping to the intended application.
The case: The customer wants to create news pages and select a category out of a dropdown. Each category has an associated image which has to be shown in an overview. No code allowed. Thus, lookup list, contentbyquerywebpart, image library, should work like a charm… But, no…
We had some problems while adding users to a SPGroup using SPGroup.Add(username, …) with Claims Based authentication. The code was executed, but the users could not login. When we add the users through the userinterface (aclinv.aspx) everything works fine. Continue reading