From 4cec282855a1bcadcea5a1bf8cb72f57f6975997 Mon Sep 17 00:00:00 2001 From: Ashlesha-MSFT Date: Mon, 4 May 2026 17:46:34 +0530 Subject: [PATCH 1/4] Revise documentation for social feed JavaScript model Updated the document to include a note about the deprecation of the SharePoint social feed JavaScript object model and added links to alternative APIs. --- ...s-and-retrieve-the-social-feed-by-using-the-javascr.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/docs/general-development/how-to-create-and-delete-posts-and-retrieve-the-social-feed-by-using-the-javascr.md b/docs/general-development/how-to-create-and-delete-posts-and-retrieve-the-social-feed-by-using-the-javascr.md index cb4bb3c075..c615c859a5 100644 --- a/docs/general-development/how-to-create-and-delete-posts-and-retrieve-the-social-feed-by-using-the-javascr.md +++ b/docs/general-development/how-to-create-and-delete-posts-and-retrieve-the-social-feed-by-using-the-javascr.md @@ -11,14 +11,16 @@ ms.localizationpriority: medium Learn how to create and delete microblog posts and retrieve social feeds by using the SharePoint JavaScript object model. +> **Important:** The SharePoint social feed JavaScript object model (`SP.Social`) is deprecated in modern SharePoint and is not supported in SharePoint Online modern experiences. For new solutions, use Microsoft Graph or Viva Engage (Yammer) APIs. + ## What are social feeds in SharePoint? -In SharePoint, a social feed is a collection of threads that represent conversations, single microblog posts, or notifications. Threads contain a root post and a collection of reply posts. In the JavaScript object model, feeds are represented by [SocialFeed](https://msdn.microsoft.com/library/356c5475-2fd6-a655-c271-5d7f21af45e2%28Office.15%29.aspx) objects, threads are represented by [SocialThread](https://msdn.microsoft.com/library/46aa4beb-d708-f20e-471e-626c8a7efab7%28Office.15%29.aspx) objects, and post and replies are represented by [SocialPost](https://msdn.microsoft.com/library/a761ce71-d3d7-420a-1e06-962674124dfa%28Office.15%29.aspx) objects. To perform core feed-related tasks, you use the [SocialFeedManager](https://msdn.microsoft.com/library/651fdf0f-841d-88f9-1e07-fcb3ad8c9410%28Office.15%29.aspx) object. In this article, we'll show you how to create an application page that uses the JavaScript object model to work with social feeds. +In SharePoint, a social feed is a collection of threads that represent conversations, single microblog posts, or notifications. Threads contain a root post and a collection of reply posts. In the JavaScript object model, feeds are represented by [SocialFeed](/previous-versions/office/sharepoint-visio/jj679727(v=office.15)) objects, threads are represented by [SocialThread](/previous-versions/office/sharepoint-visio/jj679762(v=office.15)) objects, and post and replies are represented by [SocialPost](/previous-versions/office/sharepoint-visio/jj667849(v=office.15)) objects. To perform core feed-related tasks, you use the [SocialFeedManager](/previous-versions/office/sharepoint-visio/jj679709(v=office.15)) object. In this article, we'll show you how to create an application page that uses the JavaScript object model to work with social feeds. -For more information about working with [SocialFeedManager](https://msdn.microsoft.com/library/651fdf0f-841d-88f9-1e07-fcb3ad8c9410%28Office.15%29.aspx) or for information about using other APIs to work with social feeds, see [Work with social feeds in SharePoint](work-with-social-feeds-in-sharepoint.md). +For more information about working with [SocialFeedManager](/previous-versions/office/sharepoint-visio/jj679709(v=office.15)) or for information about using other APIs to work with social feeds, see [Work with social feeds in SharePoint](work-with-social-feeds-in-sharepoint.md). @@ -425,7 +427,7 @@ function RequestFailed(sender, args) { - [Work with social feeds in SharePoint](work-with-social-feeds-in-sharepoint.md) -- [SP.Social namespace (sp.userprofiles)](https://msdn.microsoft.com/library/43d47f01-c085-0e77-bd01-48bcb7d5bb35%28Office.15%29.aspx) +- [SP.Social namespace (sp.userprofiles)](/previous-versions/office/sharepoint-visio/jj628683(v=office.15)) - [How to: Create and delete posts and retrieve the social feed by using the .NET client object model in SharePoint](how-to-create-and-delete-posts-and-retrieve-the-social-feed-by-using-the-net-cli.md) From 37d52a5b91d6cc7d81bfcd06be8d2ab2b141a542 Mon Sep 17 00:00:00 2001 From: Ashlesha-MSFT Date: Mon, 4 May 2026 20:30:50 +0530 Subject: [PATCH 2/4] Mark SharePoint mobile authentication content as legacy Update the overview of the SharePoint mobile client authentication object model to indicate that the content is legacy and provide guidance for current development practices. --- ...obile-client-authentication-object-model.md | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/docs/general-development/overview-of-the-sharepoint-mobile-client-authentication-object-model.md b/docs/general-development/overview-of-the-sharepoint-mobile-client-authentication-object-model.md index a4d8050d73..2ea7dda85a 100644 --- a/docs/general-development/overview-of-the-sharepoint-mobile-client-authentication-object-model.md +++ b/docs/general-development/overview-of-the-sharepoint-mobile-client-authentication-object-model.md @@ -8,6 +8,16 @@ ms.localizationpriority: medium # Overview of the SharePoint mobile client authentication object model + +> [!IMPORTANT] +> **LEGACY CONTENT** +> This article is retained for historical reference only. It describes deprecated SharePoint authentication APIs for Silverlight and Windows Phone applications. +> +> These APIs and platforms are no longer supported. For current development guidance, use: +> - Microsoft Authentication Library (MSAL) +> - Microsoft Graph API +> - SharePoint Online REST APIs with OAuth 2.0 + Get an overview of development with the authentication APIs of the SharePoint client object model for Silverlight. ## Authentication and client context on a Windows Phone @@ -15,7 +25,7 @@ Get an overview of development with the authentication APIs of the SharePoint cl The process of authenticating a SharePoint user on a Windows Phone 7.5 is a little different from the same process on a client computer. Client code on a Windows Phone 7.5 first creates an object of the **Authenticator** class or **ODataAuthenticator** class, which were added to the SharePointclient object model for Microsoft Silverlight for Windows Phone. It then uses this object as the user's credentials. > [!NOTE] -> For more information about the APIs that are discussed in this section, see [Overview of the SharePoint mobile object model](overview-of-the-sharepoint-mobile-object-model.md). For more information about the SharePoint client object model for Silverlight, see [Managed Client Object Model](https://msdn.microsoft.com/library/ee537247.aspx) and [Using the Silverlight Object Model](https://msdn.microsoft.com/library/ee538971.aspx). +> For more information about the APIs that are discussed in this section, see [Overview of the SharePoint mobile object model](overview-of-the-sharepoint-mobile-object-model.md). For more information about the SharePoint client object model for Silverlight, see [Managed Client Object Model](/previous-versions/office/developer/sharepoint-2010/ee537247(v=office.14)) and [Using the Silverlight Object Model](/previous-versions/office/developer/sharepoint-2010/ee538971(v=office.14)). @@ -29,7 +39,7 @@ The following are the required steps to get an authenticated client context obje -1. Obtain a [ClientContext](https://msdn.microsoft.com/library/microsoft.sharepoint.client.clientcontext.aspx) object. +1. Obtain a [ClientContext](/previous-versions/office/sharepoint-server/ee538685(v=office.15)) object. 2. Construct a new **Authenticator** object and initialize its properties. @@ -37,7 +47,7 @@ The following are the required steps to get an authenticated client context obje > [!NOTE] > One **Authenticator** object can be used with one **ClientContext** object only. You can't share an **Authenticator** object across multiple **ClientContext** objects with different URLs. -3. The **Authenticator** class implements the [ICredentials](https://msdn.microsoft.com/library/system.net.icredentials.aspx) interface, so you assign the object to the [Credentials](https://msdn.microsoft.com/library/microsoft.sharepoint.client.clientruntimecontext.credentials.aspx) property of the **ClientContext** object. +3. The **Authenticator** class implements the [ICredentials](/dotnet/api/system.net.icredentials?view=net-10.0) interface, so you assign the object to the [Credentials](/previous-versions/office/sharepoint-server/ee537379(v=office.15)) property of the **ClientContext** object. You can then add the rest of your client object model code and call **ExecuteQueryAsync**. @@ -269,7 +279,7 @@ To authenticate against a SharePoint Online URL, set the **AuthenticationMode** #### Federation Authentication - **FederationAuthURI** property is used to pass **ADFS** authentication scheme preference where, **ADFS** is configured to use multiple authentication handlers. **FederationAuthURI** specifies the type of authentication required by Authentication request when, SharePoint Online authentication is used with Federation. This parameter can override the priority established by the order in which authentication handlers are configured. To know more about Authentication handler, see [Authentication Handler Overview](https://msdn.microsoft.com/library/ee895365.aspx). + **FederationAuthURI** property is used to pass **ADFS** authentication scheme preference where, **ADFS** is configured to use multiple authentication handlers. **FederationAuthURI** specifies the type of authentication required by Authentication request when, SharePoint Online authentication is used with Federation. This parameter can override the priority established by the order in which authentication handlers are configured. To know more about Authentication handler, see [Authentication Handler Overview](/previous-versions/adfs-2.0/ee895365(v=msdn.10)). From 9bf9fc80566264ead381923424f98005013ef187 Mon Sep 17 00:00:00 2001 From: Ashlesha-MSFT Date: Tue, 5 May 2026 00:11:46 +0530 Subject: [PATCH 3/4] fixing warning --- ...-the-sharepoint-mobile-client-authentication-object-model.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/general-development/overview-of-the-sharepoint-mobile-client-authentication-object-model.md b/docs/general-development/overview-of-the-sharepoint-mobile-client-authentication-object-model.md index 2ea7dda85a..b39ff7890b 100644 --- a/docs/general-development/overview-of-the-sharepoint-mobile-client-authentication-object-model.md +++ b/docs/general-development/overview-of-the-sharepoint-mobile-client-authentication-object-model.md @@ -47,7 +47,7 @@ The following are the required steps to get an authenticated client context obje > [!NOTE] > One **Authenticator** object can be used with one **ClientContext** object only. You can't share an **Authenticator** object across multiple **ClientContext** objects with different URLs. -3. The **Authenticator** class implements the [ICredentials](/dotnet/api/system.net.icredentials?view=net-10.0) interface, so you assign the object to the [Credentials](/previous-versions/office/sharepoint-server/ee537379(v=office.15)) property of the **ClientContext** object. +3. The **Authenticator** class implements the [ICredentials](/dotnet/api/system.net.icredentials) interface, so you assign the object to the [Credentials](/previous-versions/office/sharepoint-server/ee537379(v=office.15)) property of the **ClientContext** object. You can then add the rest of your client object model code and call **ExecuteQueryAsync**. From 61db49a2eb289f9637f18678da97e27aad685c7b Mon Sep 17 00:00:00 2001 From: Ashlesha-MSFT Date: Tue, 5 May 2026 17:39:30 +0530 Subject: [PATCH 4/4] Revise documentation for Excel Services UDFs Updated the content and formatting of the Excel Services UDFs documentation, including improvements in clarity and structure. --- .../understanding-excel-services-udfs.md | 187 +++--------------- 1 file changed, 31 insertions(+), 156 deletions(-) diff --git a/docs/general-development/understanding-excel-services-udfs.md b/docs/general-development/understanding-excel-services-udfs.md index f15c9b063f..e6bfc959ed 100644 --- a/docs/general-development/understanding-excel-services-udfs.md +++ b/docs/general-development/understanding-excel-services-udfs.md @@ -10,232 +10,107 @@ ms.localizationpriority: medium # Understanding Excel Services UDFs User-defined functions (UDFs) are custom functions that extend the calculation and data-import capabilities of Excel. Developers create custom calculation packages to provide: - - - - - Functions that are not built into Excel. - -- Custom implementations to built-in functions. - +- Custom implementations to built-in functions. - Custom data feeds for legacy or unsupported data sources, and application-specific data flows. - - Users who create workbooks can call UDFs from a cell through formulas—for example, "=MyUdf(A1*3.42)"—just like they call built-in functions. - - - - -Excel Services UDFs give you the ability to use formulas in cells to call custom functions written in managed code and deployed to Microsoft SharePoint Server 2010. You can create UDFs to: +Excel Services UDFs give you the ability to use formulas in cells to call custom functions written in managed code and deployed to SharePoint Server. You can create UDFs to: - Call custom mathematical functions. - -- Get data from custom data sources into worksheets. - +- Get data from custom data sources into worksheets. - Call Web services from the UDFs. - - ## Creating Managed-Code UDFs -An easy way to create an Excel Services managed-code UDF is to use the Microsoft Visual Studio 2005 class library template. You will need to reference the Excel Services UDF dynamic link library (DLL), named Microsoft.Office.Excel.Server.Udf.dll, in your managed-code UDF project. - - - -Microsoft.Office.Excel.Server.Udf.dll has been compiled using Microsoft .NET Framework 2.0. If you use Visual Studio 2003 to create your managed-code UDF, you will not be able to reference Microsoft.Office.Excel.Server.Udf.dll. It is not possible for an assembly created with an older version of the .NET Framework to reference an assembly created with .NET Framework 2.0. - - - +An easy way to create an Excel Services managed-code UDF is to use the Visual Studio class library template. You will need to reference the Excel Services UDF dynamic link library (DLL), named Microsoft.Office.Excel.Server.Udf.dll, in your managed-code UDF project. + +Microsoft.Office.Excel.Server.Udf.dll has been compiled using Microsoft .NET Framework. If you use Visual Studio to create your managed-code UDF, you will not be able to reference Microsoft.Office.Excel.Server.Udf.dll. It is not possible for an assembly created with an older version of the .NET Framework to reference an assembly created with .NET Framework. ### Required Attributes -To use custom functions in a class as an Excel Services UDF class, you must mark your UDF class with the **Microsoft.Office.Excel.Server.Udf.UdfClass** attribute. Any classes that are not marked with this attribute in the UDF assembly will be ignored by Excel Calculation Services. They are not considered to be Excel Services UDF classes. - - +To use custom functions in a class as an Excel Services UDF class, you must mark your UDF class with the **Microsoft.Office.Excel.Server.Udf.UdfClass** attribute. Any classes that are not marked with this attribute in the UDF assembly will be ignored by Excel Calculation Services. They are not considered to be Excel Services UDF classes. To use custom functions in a class as Excel Services UDF methods, you must mark your UDF methods with the **Microsoft.Office.Excel.Server.Udf.UdfMethod** attribute. Any methods that are not marked with this attribute in the UDF assembly will be ignored because they are not considered to be Excel Services UDF methods. - - - + The **Microsoft.Office.Excel.Server.Udf.UdfMethod**attribute has an **IsVolatile** property. You use the **IsVolatile** property to specify a UDF method as volatile or nonvolatile. The **IsVolatile** property takes a Boolean value. The default value is **false**, which means that particular UDF method is nonvolatile. - - - ### Location of Microsoft.Office.Excel.Server.Udf.dll -On the computer where you have installed SharePoint Server 2010, you can find a copy of Microsoft.Office.Excel.Server.Udf.dll at: - - +On the computer where you have installed SharePoint Server, you can find a copy of Microsoft.Office.Excel.Server.Udf.dll at: - `[drive:]\\Program Files\\Common Files\\Microsoft Shared\\web server extensions\\14\\ISAPI` + `[drive:]\\Program Files\\Common Files\\Microsoft Shared\\web server extensions\\16\\ISAPI` - - ## Deployment and Security - ### Deployment Location Type UDF assemblies can reside in a local directory, global assembly cache, or network share. In a farm scenario, the local directory path must be identical across the farm. - - - ### Identification of UDF Assemblies You can expose the identity of a UDF assembly by using the full path or strong name of the assembly for Excel Calculation Services to call. - - - + For example, you can use: - - - - -- C:\\UDFs\\MySampleUdf.dll - + +- C:\\UDFs\\MySampleUdf.dll - \\\\MyNetworkServer\\UDFs\\MySampleUdf.dll - - CompanyName.Hierarchichal.MyUdfNamespace.MyUdfClassName.dll, Version=1.1.0.0, Culture=en, PublicKeyToken=e8123117d7ba9ae38 - - ### Enabling UDF Assemblies - UDF assemblies are disabled by default. - - - + Each Excel Services trusted location has an **AllowUdfs** flag. > [!NOTE] > The **AllowUdfs** flag is denoted by the **User-defined functions allowed** option on the Excel Services Trusted File Locations page. To learn how to navigate to the Trusted File Locations page, see [Step 3: Deploying and Enabling UDFs](step-3-deploying-and-enabling-udfs.md). - - -The default **AllowUdfs** value is **false**. If the **AllowUdfs** value is set to **false** in a particular trusted location, the workbooks in that trusted location are not allowed to call UDFs. - - - +The default **AllowUdfs** value is **false**. If the **AllowUdfs** value is set to **false** in a particular trusted location, the workbooks in that trusted location are not allowed to call UDFs. In order to allow UDFs to be called from a specific trusted location, you set the **AllowUdfs** value to **true**. - - - -If the **AllowUdfs** value is **false** when a session is started on a workbook that has UDF calls in this trusted location, the UDF calls will fail. If you change the **AllowUdfs** value to **true** after a session has started, the UDF calls will also fail. This is because changes in the **AllowUdfs** flag take effect on the next session, after the configuration database has been updated. - - + +If the **AllowUdfs** value is **false** when a session is started on a workbook that has UDF calls in this trusted location, the UDF calls will fail. If you change the **AllowUdfs** value to **true** after a session has started, the UDF calls will also fail. This is because changes in the **AllowUdfs** flag take effect on the next session, after the configuration database has been updated. ### Allowing UDF Assemblies to Run If administrators want to allow UDF assemblies to run, they have to register all UDF assemblies, and enable workbooks to call UDFs by setting the **AllowUdfs** flag to **true** in the trusted locations. - - - ### Reloading a UDF Assembly To reload a UDF assembly, you can run **iisreset** or restart the Excel Calculation Services application domain. - - - -> **Caution:** -> Resetting IIS will end all current sessions. > For more information, see [How to: Enable UDFs](how-to-enable-udfs.md). - - - -For more information, see [Unloading an Application from Memory](https://go.microsoft.com/fwlink/?LinkId=65706) (https://msdn.microsoft.com/library/default.asp?url=/library/csvr2002/htm/cs_mmc_administering_myhj.asp). +> [!CAUTION] +> Resetting IIS will end all current sessions. +> For more information, see [How to: Enable UDFs](how-to-enable-udfs.md). - - ### Default Code Access Security Permission for UDF Assemblies By default, UDF assemblies run with full trust. - - - ### Restricting Code Access Security Permission for UDF Assemblies If you do not want a particular UDF assembly to run with full trust, you must explicitly restrict code access security permission for that UDF assembly. You can configure the code groups and restrict permission by using the .NET Framework 2.0 Configuration tool. - - Developers can also use the **RequestMinimum** and **RequestOptional** methods in their code to ensure that their UDF assemblies don't get more permission than they require. - - - -For more information about configuring code groups, as well as the **RequestMinimum** and **RequestOptional** methods, see the following articles on MSDN: - - - - -- [Configuring Code Groups Using the .NET Framework Configuration Tool](https://msdn.microsoft.com/library/default.asp?url=/library/cpguide/html/cpconUsingNETConfigurationToolToWorkWithCodeGroups.asp?frame=true) (https://msdn.microsoft.com/library/default.asp?url=/library/cpguide/html/cpconUsingNETConfigurationToolToWorkWithCodeGroups.asp?frame=true) - - -- [Code Access Security in Practice](https://go.microsoft.com/fwlink/?LinkId=65465) (https://msdn.microsoft.com/library/default.asp?url=/library/dnnetsec/html/thcmch08.asp) - - - -## See also - - -#### Tasks - - - - - - [How to: Create a UDF That Calls a Web Service](how-to-create-a-udf-that-calls-a-web-service.md) - - - - [How to: Trust a Location](how-to-trust-a-location.md) - - - - [How to: Catch Exceptions](how-to-catch-exceptions.md) - - - - [How to: Enable UDFs](how-to-enable-udfs.md) -#### Concepts - - - - - - [Walkthrough: Developing a Managed-Code UDF](walkthrough-developing-a-managed-code-udf.md) - - - - [Frequently Asked Questions About Excel Services UDFs](frequently-asked-questions-about-excel-services-udfs.yml) - - - - [Excel Services Architecture](excel-services-architecture.md) - - - - [Excel Services Alerts](excel-services-alerts.md) - - - - [Excel Services Known Issues and Tips](excel-services-known-issues-and-tips.md) - - - [Excel Services Best Practices](excel-services-best-practices.md) +## See also +- [How to: Create a UDF That Calls a Web Service](how-to-create-a-udf-that-calls-a-web-service.md) +- [How to: Trust a Location](how-to-trust-a-location.md) +- [How to: Catch Exceptions](how-to-catch-exceptions.md) +- [How to: Enable UDFs](how-to-enable-udfs.md) +- [Walkthrough: Developing a Managed-Code UDF](walkthrough-developing-a-managed-code-udf.md) +- [Frequently Asked Questions About Excel Services UDFs](frequently-asked-questions-about-excel-services-udfs.yml) +- [Excel Services Architecture](excel-services-architecture.md) +- [Excel Services Alerts](excel-services-alerts.md) +- [Excel Services Known Issues and Tips](excel-services-known-issues-and-tips.md) +- [Excel Services Best Practices](excel-services-best-practices.md)