23

My observations (answers at bottom): If this is too long then just read the headings Developer => Accept change If you want to stay calm and not have your world changed all the time, then maybe a job as a Software Developer isn't the right for you unless you want to maintain old legacy applications. Cobol hasn't changed much lately. Companies/Application ...


14

Try putting extra apostrophe. That is, use Web/getfilebyserverrelativeurl("/Shared Documents/Roy''s quoted doc.txt")


12

So, I'll wade into this discussion. Apologies for the wall of text. Some background - I was a developer in CMS 2001/2002 before we joined the SharePoint group in 2003. I've build on top of the core SharePoint codebase as part of the publishing features, taxonomy, etc. I'm super familiar and comfortable with server solutions and how to extend SP on the ...


8

CSOM is the best thing to happen to the platform. It lets us run code where ever the hell we want, how we want. The REST API (not ListData.svc, that should never have made it into the release) took it a step further and allowed client side code to be easily written in JavaScript too. The problem with SharePoint solutions was the upgradability of the ...


8

At the end of 2013, I decided to dive into the SharePoint app world (Oh, they are now called add-ins) and did few samples and shared my learnings. I had added a disclaimer to the blog: I did not make any production apps as I am yet to get allocated on a project which uses SP 2013 apps More than 3 years down the line, the disclaimer is still true in my ...


8

The amount of change we've had to deal with in the SharePoint Development space in the last 12 years has been exhausting. I've lived through it and will tell you it's just hard for management and users to accept we need to keep learning completely new frameworks, changing approaches and migrating solutions. I've had solutions that have been on every single ...


6

That's a great discussion out here! Let me put my 50cents. A lot of different topics are discussed, I have a lot of different thoughts and don't even know how to structure them. I'll try. I think there are few reasons why Microsoft invent new approaches. And the main reason is moving to cloud. Consider image from here - SharePoint converged code base. ...


3

Yes you can use the graph api. Check out the api with the graph explorer. The api function you need is: https://graph.microsoft.com/v1.0/me/drive/recent For "marketing reasons" this api command is in the onedrive section, but it returns your recent onedrive and sharepoint documents.


3

You can use one of ADFS features called ActAs. When user is authenticated with ADFS in some ASP.NET application, usually there is a "BootstrapToken": ((IClaimsIdentity)Thread.CurrentPrincipal.Identity).BootstrapToken; holding security bits about authenticated user. Using ActAs feature you can request new token for another relying party, which accepts ...


3

The following C# sample shows how to upload large file using the StartUpload, ContinueUpload, and FinishUpload REST endpoints: using (var client = new WebClient()) { client.BaseAddress = webUri; client.Credentials = GetCredentials(webUri, userName, password); client.Headers.Add("X-FORMS_BASED_AUTH_ACCEPTED", "f"); client.Headers.Add("X-...


3

One property you can start to filter by is IsCatalog. Another one you can use is Hidden, although you are likely to use this on your own lists. E.g., /_api/Web/Lists/?$filter=IsCatalog eq false /_api/Web/Lists/?$filter=Hidden eq false Update Filtering out all lists seems a bit tricky, as for instance the user information list doesn't seem to have much ...


2

It is possible to use https://[our_tenant]-my.sharepoint.com/_api/web/lists endpoints with OneDrive. But you cannot do it through a site or site collection, you need to write this code in a SharePoint App(SharePoint hosted also works) with tenant permissions. and deploy it from app catalog, does not work from an app deployed to a developer site through VS. ...


2

I've figured out what my problem was. I had an error in my tenant URL. At first it was: https://<tenant>.sharepoint.com/ Which works for sharing documents within our SharePoint teamsite. For sharing documents in the Personal OneDrive for Business however, I had to adjust the URL to the following: https://<tenant>-my.sharepoint.com


2

For uploading file, AngularJs does not work in jQuery way! In earlier time, I had a R&D and made it working. Find below: function fileUploadRequest(data, url) { var deferred = $q.defer(); $http({ url: baseUrl + url, method: "POST", processData: false, data: data, ...


2

Yes, I tried this before and by default Site resource does not provide owner property. As of now, by using /sites/{site-id} graph returns only below given properties: @odata.context createdDateTime description id lastModifiedDateTime name webUrl displayName root siteCollection However owner property could be retrieved using Site.Drive property. To get the ...


2

You have to add a RemoteEndPoint to your solution. In the appmanifest, go to the tab 'Remote End Points'and write the url where you need to consume the information


2

Finding differences between two csv files is not an OOB capability of SharePoint. SharePoint could host the files, and you could use JavaScript to read and compare the file contents.


1

Use the SharePoint REST API. Any technology that can make web services calls can interact with SharePoint content. (Actually, perform just about any SharePoint activity.) So, MVC C# would work, as would JavaScript, PowerShell and just about everything else. Your biggest challenge will be working out how you want to deal with user authentication. (Who can do ...


1

There is no CSOM/JSOM to generate SharePoint site collection audit logs; the class you referenced is for SharePoint on-prem only. In general, you shouldn't be using site collection audit logging in SharePoint Online, rather use the Office 365 Security and Compliance center audit logs. Take a look into the Office 365 Management Activity API reference for a ...


1

Below snippet can be used to update MMD field var termValue = "-1;#" + termLabel + "|" + termGUID; item.set_item("Process", termValue); item.update();


1

Unfortunately, the REST services are only working for authenticated users. It doesn't work with anonymous access in 2013. SharePoint 2013 APIs for anonymous and/or mobile access But You need to set the Bearer property in the request header with Authorization token. Please look into below mentioned code. SharePointContextToken ContextToken = TokenHelper....


1

Finally I had to remove style ressource reader from the site and add it again. I guess the permission provisionning was bugged.


1

I think I've figured it out. You can the following to list the root level folders of a sharepoint site: https://{tenant}.sharepoint.com/{site-path}/_api/v2.0/drive/root/children Where, if you are looking at the URL of the SharePoint teamsite homepage {tenant} and {site-path} are: https://{tenant}.sharepoint.com/{site-path}/_layouts/15/start.aspx#/...


1

You can use Wopiframe. For example: http://sharep.xxx:8080/sites/"site"/_layouts/15/WopiFrame.aspx?sourcedoc=%2Fsites%2F"site"%2FShared%20Documents%2FTitle%2Edocx&action=edit


1

As @Marko said, you need to replace select with $select. Here is a nice resource about OData Query Operations in SharePoint REST, that you can refer to for further details. The url will look something like https://MYSITE.sharepoint.com/MYSubsite/_api/lists/getbytitle('MYTasksList')/items?$select=Title


1

I'll add on to Nadeem's answer by providing a test that I did. I got 400 errors when I tried to use this as suggested in this answer: Web/getfilebyserverrelativeurl("/Shared Documents/Roy''s quoted doc.txt") I instead successfully used single quotes: Web/getfilebyserverrelativeurl('/Shared Documents/Roy''s quoted doc.txt') So then I went further. Here ...


1

here is what MSFT stance on this: I should say that, REST service partly work in SharePoint Online. I’d tried to confirm this question in our internal resource, and got the information as the following: With the scenario we use REST service in InfoPath, it will works when we preview forms in the client, as soon as we publish it to SharePoint ...


1

Azure AD Graph API in particular Get Contact operation allows to access contacts from Global Address List: GET https://graph.windows.net/mytenantdomain/contacts?api-version=2013-04-05 HTTP/1.1 Authorization: Bearer <token> Content-Type: application/json Host: graph.windows.net Follow Accessing Azure Active Directory Graph Information article that ...


1

You can convert the date time string returned into javascript datetime object, and extract the information required. Take a look at this link var date = new Date("2013-09-23T23:56:46Z");


1

If anyone ever has the same problem, I found a solution to this: instead of hardcoding the wreply parameter, I first access the SharePoint site + "/_forms/default.aspx" with a request that does not follow redirects and has the user agent set. The response has a Location header that I get and which contains a wreply parameter. Only the left part (in the Uri ...


Only top voted, non community-wiki answers of a minimum length are eligible