Programmatically use distributed caching in SharePoint 2013?

As per below TechNet article, developers are not allowed to use the AppFabric instance that comes with SharePoint 2013. The expectation is to deploy a seperate AppFabric cluster for custom applications.
http://technet.microsoft.com/en-us/library/jj219572.aspx#Important
Distributed caching was a long waited, nice SharePoint feature but it does not make sense to restrict developer access to this. We have a requirement to cache fairly smaller amount of data (must be distributed), but cannot deploy a separate Cache servers
for this. What are my options (other than System.Web.Caching)? Is there an API to safely cache smaller amount of data? What is the rationale behind restricting access to default AppFabric instance come with SharePoint?
Thanks in Advance,
Amal

Yes, it's just a thread-safe implementation of object cache and not a distributed cache. Probably the reason behind recommending to use a separate AppFabric cache cluster is that additional named caches of custom solutions and applications will
interfere with SharePoint  named caches. Without a scope and priority defined, the named caches of custom solutions may start evicting SharePoint items if their usage is much higher than that of SharePoint ones.
AppFabric Caching and SharePoint: Concepts and Examples (Part
1)
This post is my own opinion and does not necessarily reflect the opinion or view of Slalom.

Similar Messages

  • Is it supported to use shared mailboxes in SharePoint 2013 Workflows?

    We try to send an email to a shared mailbox (Exchange 2007) from a workflow in SharePoint 2013. No errors are shown in the workflow but the message does not arrive in the mailbox. If we do the same with an user mailbox it works.
    Both Exchange and SharePoint are on-premises.
    Is it supported to use shared mailboxes in SharePoint 2013 Workflows?

    If it is a mailbox then mail should be delivered.
    Please check if mail is in C:\Inetpub\ pickup or drop folder
    also check if emails to normal mailbox works fine

  • As i am fresher Please share the doc of ECMA script using java script in SharePoint 2013 also how we can insert,update,delete records in list using ECMA script.

    As i am fresher Please share the doc of ECMA script using java script in SharePoint 2013 step by step also how we can insert,update,delete records in list using ECMA script.
    Thanks and Regards, Rangnath Mali

    Hi,
    According to your post, my understanding is that you want to use JavaScript to work with SharePoint list.
    To create list items, we can create a ListItemCreationInformation object, set its properties, and pass it as parameter to the addItem(parameters) function
    of the List object.
    To set list item properties, we can use a column indexer to make an assignment, and call the update() function so that changes will take effect when you callexecuteQueryAsync(succeededCallback,
    failedCallback). 
    And to delete a list item, call the deleteObject() function on the object. 
    There is an MSDN article about the details steps of this topic, you can have a look at it.
    How to: Create, Update, and Delete List Items Using JavaScript
    Thanks & Regards,
    Jason
    Jason Guo
    TechNet Community Support

  • Using Excel 2010 with SharePoint 2013 Excel services

    Hello:
    What features are we missing when using Excel 2010 (rather than Excel 2013) with SharePoint 2013 Excel services?
    Regards
    Jeff Gorvits

    Hi Jeff,
    You might want to read the articles below:
    https://support.office.com/en-us/article/Whats-new-in-Power-View-in-Excel-2013-and-in-SharePoint-Server-8e3b4259-421e-41fc-a48e-854388ad14d0?ui=en-US&rs=en-US&ad=US
    https://support.office.com/en-us/article/Version-compatibility-between-Power-Pivot-Data-Models-in-Excel-2010-and-Excel-2013-188f44fd-3cfd-4aa7-b4e6-a9402653cbf3?ui=en-US&rs=en-US&ad=US
    Regards,
    Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact
    [email protected] .
    Rebecca Tu
    TechNet Community Support

  • Document Set Creation in document library using REST API in Sharepoint 2013

    Hi,
    I want to create the document set using REST API call. Currently i am able to create the folder and able to upload the files using REST API's in the document library. Is there any way we can pass the contentype name or Id and create the document set using
    REST API call. We need to create the document set along with metadata and upload the files inside the document set.
    I need to create the document set along with meta data column values using REST API. Please let me know how we can achieve this through REST API.
    Thank you,
    Mylsamy

    Hi,
    According to your post, my understanding is that you wanted to create document set along with managed metadata fields.
    The REST API does not currently support working with Managed Metadata or Taxonomy fields.
    As a workaround, we can use the JavaScript Client Object Model.
    Create document set using JavaScript Client Object Model.
    http://blogs.msdn.com/b/mittals/archive/2013/04/03/how-to-create-a-document-set-in-sharepoint-2013-using-javascript-client-side-object-model-jsom.aspx
    http://social.technet.microsoft.com/Forums/sharepoint/en-US/aacd96dc-0fb2-4f0d-ab4c-f94ce819e3ed/create-document-sets-with-javascript-com-sharepoint-2010
    Set managed metadata field with JavaScript Client Object Model.
    http://sharepoint.stackexchange.com/questions/95933/add-list-item-with-managed-metadata-field-through-jsom
    http://sharepointfieldnotes.blogspot.com/2013/06/sharepoint-2013-code-tips-setting.html
    Thanks,
    Jason
    Forum Support
    Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact
    [email protected]
    Jason Guo
    TechNet Community Support

  • Getting error while publishing workflow using SP designer for SharePoint 2013

    Hi,
    I am try to setup Workflow manager for our sharepoint applications.
    WF manager set ran without any issue.
    I registered the SPWorkflow service which succeeded as well. The Workflow service application shows "Workflow is connected"
    I am creating a workflow using sharepoint designer using my credential (not Service account). I am able to save it but while publishing, its prompting with an error.
    The error says "Errors were found while compiling the workflow.The workflow files were saved but cannot run." Clicking advanced button show
    "Microsoft.SharePoint.SPException: We're sorry, we weren't able to complete the operation, please try again in a few minutes. If you see this message repeatedly, contact your administrator.
       at Microsoft.SharePoint.SPScaleOutDatabaseMap.CreateSqlSession(ISPScaleOutDatabaseMapProvider mapProvider, Byte[] compositeKey, Guid forceRefreshVersion, Guid& version)
       at Microsoft.SharePoint.SPScaleOutDatabaseCommandExecutor.Execute(ExecuteDelegate operation, ISPScaleOutDatabaseMapProvider mapProvide"
    Any help would be highly appreciated
    Thanks,

    Hi,
    According to your post, my understanding is that you got error while publishing workflow using SharePoint designer for SharePoint 2013.
    Please check whether the Central Admin > Manage Service Application-> “App Management Service” is started.
    Please check whether the “Configure service application associations”,  ”App Management Service” is already associated.
    Then please check whether the “Manage Services on server” and the “App Management Service” is started.
    In addition, please try to re-register Workflow Service.
    If the issues still exists, please follow the steps in the
    Steps to Verify that Server Is Correctly Set Up. After you verified that the server is correctly set up, follow the steps in the
    Steps to Troubleshoot Workflow Management Service and
    Troubleshooting the Service Bus for Windows Server then retry your action related to publishing workflows
    More information:
    http://wp.ahcheng.com/2013/03/23/error-were-found-when-compiling-the-workflow-the-workflow-files-were-saved-but-cannot-be-run/
    http://sp2013.pro/2013/04/solution-errors-were-found-when-compiling-the-workflow-the-workflow-files-were-saved-but-cannot-be-run-cannot-set-unknown-member/
    Best Regards,
    Linda Li
    Linda Li
    TechNet Community Support

  • How to fetch Properties of all Survey Lists from site collection using Java Script in SharePoint 2013

    Hi,
    I am trying to fetch properties of all lists of "Survey Type" from my site collection in SharePoint 2013 using script editor web part. I am able to fetch properties of one list by mentioning its name explicitly in code but not all survey
    list.
    My task is to display Survey name , description ,Time created and URLs of all survey lists using java script in script editor web part.
    And let me know , if there is any other OOB feature of SharePoint 2013 to achieve the same. 
    Here is the code  :
    <script src="http://code.jquery.com/jquery-1.10.2.min.js" type="text/javascript"></script>
    <script type="text/javascript">
    SP.SOD.executeFunc('sp.js', 'SP.ClientContext', sharePointReady);
    function sharePointReady() {
         GetSurveyList();
     function GetSurveyList() {
            var spListTitle = " List Name";
             var clientContext = new SP.ClientContext.get_current();
            var oWeb = clientContext.get_web();
            this.surveyList = oWeb.get_lists().getByTitle(spListTitle);
            clientContext.load(surveyList);
            clientContext.executeQueryAsync(Function.createDelegate(this, this.GetListProperties),Function.createDelegate(this, this.onFailure));
     function GetListProperties() {
            $("#SurveyList").text("");
            var surveyTable = "<table border=1>";
            surveyTable = surveyTable.concat("<tr><td>Survey Name</td>");
            surveyTable = surveyTable.concat("<td>Survey Description</td>");
            surveyTable = surveyTable.concat("<td>Time Created</td>");
            surveyTable = surveyTable.concat("<tr><td>" + surveyList.get_title() + "</td>");
            surveyTable = surveyTable.concat("<td>" + surveyList.get_description() + "</td>");
            surveyTable = surveyTable.concat("<td>" + surveyList.get_created().format("MM/dd/yyyy hh:mm tt")+ "</td>");
                 surveyTable = surveyTable.concat("</table>");
            $("#SurveyList").append(surveyTable);
        function onFailure(sender, args) {
            alert('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace());
    </script>
    <div id="SurveyList"></div>

    Shifa,
    Please use search result webpart or content query webpart to list all survey list.
    Please 'propose as answer' if it helped you, also 'vote helpful' if you like this reply.

  • Join two list with condition using caml query in SharePoint 2013 with client object model

    Hi,
    Want to join two list to get all fields from both list.
    Am new to sharepoint and sharepoint 2013. Am working in sharepoint 2013 online apps. Am using context.executeQueryasync to load list and get items from list. Am able to get items from single list with caml query, but not able to get both list field values
    with joins.  I did lot of surfing..but not..
    Below is my code..
    ListName1 : "AssignedTasks"
    ListName2 : "Tasks"
     var assignedQueryTest = "<View><Joins><Join Type='INNER' ListAlias='Tasks'><Eq><FieldRef Name='TaskId' RefType='Id'/><FieldRef List='Tasks' Name='ID' /></Eq></Join></Joins>"
                    + "<ViewFields><FieldRef Name='TitleValue' /><FieldRef Name='ActionItemsValue' /></ViewFields>"
                    + "<ProjectedFields>"
                    + "<Field Name='TitleValue' Type='Lookup' List='Tasks' ShowField='Title' /><Field Name='ActionItemsValue' Type='Lookup' List='Tasks' ShowField='ActionItems' />"
                    + "</ProjectedFields>"
                    + "</View>";
                   var web = context.get_web();
                    var list = web.get_lists().getByTitle("AssingedTasks");
                    var myQuery = new SP.CamlQuery();
                    myQuery.set_viewXml(assignedQueryTest);
                    var myItems = list.getItems(myQuery, "Include(TitleValue,ActionItemsValue)");
                    context.load(myItems);
                    context.executeQueryAsync(function () { if(myItems.get_count()>0){....}
    }, errorCallback);
    Here am able to get "AssignedTasks" list field values but not able to get "Tasks" list field values. 
    Can you please help me to resolve the issue. Or new idea for join. I have add the condition also in the query.
    If anybody have good sample, please provide.
    Thanks,
    Pariventhan
    Pariventhan.S

    Hi Pariventhan,
    I don't know about join but I have a workaround of this problem.
    Declare one variable (itemcollection) globally. Load all the items "AssignedTasks" using context.load.
    In the success method call another CAML query using <IN> tag of the ID of the items from the second list (Assuming you have look-up column of the ID of the first list to the second list).
    If this is not clear to you then please let me know. If possible then I can provide code sample.
    Thanks,
    Aniruddha

  • Create & Start UPS Service Using Power-Shell in SharePoint 2013

    I want to know that is there a way to create a User Profile Synchronization Service using Power-Shell in a SharePoint 2013 Enterprise site? If so then how am I supposed to do that and start the User Profile Synchronization Service using the Power-Shell.
    I'm seeking this help because the UPS service is stuck in Starting and both FIM Services are also not started but they are in Automatic start mode.
    Could someone try to solve this matter.
    Thanks,
    regards,
    Chiranthaka

    start it from powershell will not help you resolve the issue.
    Try below articles:
    http://myspexp.com/2011/04/28/user-profile-synchronization-servicehangs-on-starting-i-fixed-it/
    troubleshoot this issue:http://www.harbar.net/articles/sp2010ups2.aspx
    http://www.sharepointdiary.com/2012/09/user-profile-synchronization-service-stuck-at-starting.html#ixzz2aXArH7zX

  • Access Denied Error on replying to a discussion board Post using anonymous access in sharepoint 2013 .

    Hi ,
    We are facing issue while replying to a post in Discussion board using Anonymous access users in Sharepoint 2013.
    WE are able to post a discussion using anonymous acess but not able to reply to the discussion post.
    Steps Performed  - :
    1. Enabled Anonymous access at Web application Level .
    2. In SiteCollection > Site Permissions > Anonymous Acess > Enable for List and Libraries .
    3.  Disable ViewFormPAgeLock Feature .
    4 .Go to Discussion board List >Permissions > Break Inheritence .
    5 . Given Add ,Edit and View item permission to anonymous users .
    6 . "Create and edit all items " Discussion Board Library Advanced Settigs  .Infact ,Neither option is working .
    Please suggest if we are missing soming .Please help
    Thanks
    Mayank

    Hi,
    According to your post, my understanding is that when you went to the Discussion List and selected the thread then view the list in “Flat” view, the Spelling ICON was greyed out.
    By design in SharePoint, when you view the list in “Flat” view, the ribbon would be as below:
    Only when you add a reply and move the mouse to the content, the Spelling ICON will appear.
    Best Regards,
    Linda Li
    Linda Li
    TechNet Community Support

  • Emailing external user using a workflow in Sharepoint 2013

    I am currently trying to create a list where the user can upload a document, input an email address (external) and an expiration date. I then have a workflow that will send an email on the expiration date. The problem I am getting is that Sharepoint 2013
    doesn't like emailling externally.
    22/01/14: I have since found that this isn't a problem with exchange, as Sharepoint is trimming the addresses out of the original workflow. Does anyone know how to stop this.
    Please help.
    Evil Genius at Work. DO NOT DISTURB!!!

    you need to allow their IP address to relay anonymously in Exchange.
    http://social.technet.microsoft.com/Forums/sharepoint/en-US/c55a6a68-c6e3-4f4d-b5ed-d4e2892fe490/sharepoint-2010-email-external-users-in-a-workflow?forum=sharepointcustomizationprevious
    My Blog- http://www.sharepoint-journey.com|
    If a post answers your question, please click Mark As Answer on that post and Vote as Helpful

  • Problem while refreshing the data for the second time using excel services in sharepoint 2013...

    Hi,
    I have migrated my Sharepoint from 2010 to 2013.I am able to get the data at the first time of refresh when I click on refresh for the second time I am getting the empty the sheet.
    below find the flow of refresh
    First Refresh
    On Click of refresh open the workbook with excel services and return the session id.
    Using that session I am invoking RefrehAsync method of excel services
    After refresh completed I am setting the calculation of workbook as automatic(to calculate the formulas) using the same session id
    After setting the calculation as Automatic I am setting the calculation type as full(recalculate) using the same session id.
    Now I am able to see the data
    Second Refresh
    After clicking on refresh instead of opening the workbook I am using the session id(already opened workbook) and setting the calculation type as manual
    I am following the same process from refresh(RefreshAsync) as I have followed in first refresh.
    This time my formulas are not getting calculated because of that I am not able to see the data.
    Could you please let me know that am I missing anything here?
    Is this know issue in Sharepoint2013 excel services as same code is working fine with Sharepoint2010.
    If I close the workbook(session id null) and opens(new session id) for all the refreshes it is working and I am able to see the data.
    Thanks,
    Meenakshi Nagpal
    N.Meenakshi

    I am able to see the data for the second refresh  if I change the data source.If I use the same data source which is used in the first refresh I am not getting the data.Excel services will contact the cubes and calculate the formulas in my workbook.
    Could you please let me know what could be the problem at second refresh while contacting the same data source with same session id?
    Please help me asap.
    Thanks,
    Meenakshi Nagpal
    N.Meenakshi

  • How to update and delete using rest services in SharePoint 2013..

    I am looking to create,update and delete data in SharePoint list where i am using below code for creating data..I should be performing three operations on single button click how can i achieve this.Below is the code i am using for creating data to list and
    displaying in CEWP.
    <html>
    <head>
    <style type="text/css">
    #mytable{
    border : 1px solid;
    </style>
    <script type="text/javascript" src="https://sharepointapp28.sharepoint.com/sites/Dev2013/SiteAssets/Scripts/jquery-1.11.1.min.js" ></script>
    <script type="text/javascript">
    var ListName;
    var webUrl;
    $(document).ready(function(){
     SP.SOD.executeFunc('sp.js', 'SP.ClientContext', sharePointReady);//Doubt
    function sharePointReady() {
    webUrl = _spPageContextInfo.siteAbsoluteUrl;
    ListName = "test"; 
    $('#btnSub').click(function () {
    updateItem();
    function updateItem() {
    var name = $('#txtName').val();
    var Desc = $('#txtDesc').val();
    var city = $('#txtCity').val();
        var itemType = GetItemTypeForListName(ListName);
        var item;
            item = {
                '__metadata': { "type": itemType },
                'Name': name,
                'Description': Desc,
                'City': city
        var xmethod = 'POST';
        jQuery.ajax({
            url: webUrl + "/_api/web/lists/getbytitle('" + ListName + "')/items",
            type: "POST",
            data: JSON.stringify(item),
            contentType: "application/json;odata=verbose",
            headers: {
                "Accept": "application/json;odata=verbose",
                "X-RequestDigest": $("#__REQUESTDIGEST").val()
            success: onUpdateMSOPProcessSuccess,
            error: onUpdateMSOPProcesFail
        function onUpdateMSOPProcessSuccess(data) {
    alert('successfully updated to MyList!!!')
        function onUpdateMSOPProcesFail(data) {
            alert(data.d.err);
    function GetItemTypeForListName(name) {
        return "SP.Data." + name + "ListItem";
    </script>
    </head>
    <body>
    <table style="width:500px" id="mytable">
    <tr><td colspan="3">&nbsp;</td></tr>
    <tr><th colspan="3">Rest API</th></tr>
    <tr><td colspan="3">&nbsp;</td></tr>
    <tr><th>Name</th> <td> : </td> <td> <input type="text" id="txtName" /> </td></tr>
    <tr><th>Description</th> <td> : </td> <td> <input type="text" id="txtDesc" /> </td></tr>
    <tr><th>City</th> <td> : </td> <td> <input type="text" id="txtCity" /> </td></tr>
    <tr><td colspan="3">&nbsp;</td></tr>
    <tr><th></th><td colspan="2" align="left"><input type="button" value="submit" id="btnSub" /></th></tr>
    <tr><td colspan="3">&nbsp;</td></tr>
    </table>
    </body>
    </html>

    Hello,
    With one button you want to perform 3(Create, Update and Delete) operation
    To create:
    First check whether the data exist with full combination of Name,Desc and City.
    If not exist you can execute the create function.
    If exist, get confirmation to delete the item by pop up. Using item ID you can perform Delete operation
    To Update:
    How you want to update the item, by keeping unique value or combination of columns?
    based on that you can perform the update operation.
    Whenever you see a reply and if you think is helpful, click "Alternate TextVote As Helpful"! And whenever you see a reply being an answer to the question of the thread, click "Alternate TextMark As Answer

  • Creating Termset and terms in Taxonomy using Sandboxe Solution in Sharepoint 2013

    I created a Sandboxed Solution, Added one Visual web part in that solution with one button control. Added Microsoft.Sharepoint.Taxonomy.dll Reference to the solution. Then in the button click event i wrote the following code:
    SPSite site = SPContext.Current.Site;
                var taxonomySession = new TaxonomySession(site);
                var termStore = taxonomySession.DefaultSiteCollectionTermStore;
                lbl1.Text = termStore.ToString();
                var termStoreGroup = termStore.CreateGroup(txtTermSetGroupVal.Text);
                var termSet = termStoreGroup.CreateTermSet(txtTermSetCatNameVal.Text);
                termSet.CreateTerm("AAA", CultureInfo.CurrentCulture.LCID);
                termSet.CreateTerm("BBB", CultureInfo.CurrentCulture.LCID);
                termStore.CommitAll();
    Then, I deployed this solution in one Publishing site. Added one new page in that site and Inserted this visual webpart in that page. When i click that button, I got the
    following error,
    Web Part Error: Unhandled exception was thrown by the sandboxed code wrapper's Execute method in the partial trust app domain: An unexpected error has occurred. Correlation ID: 49c1759c-5913-70a8-76e3-b2827260601a.[SPUserCodeSolutionExecutionFailedException:
    Unhandled exception was thrown by the sandboxed code wrapper's Execute method in the partial trust app domain: An unexpected error has occurred.]

    Hi,
    The Yammer, OneDrive, Sites , My Sites and so on are buttons in the suite bar, the BROWSE, PAGE, SHARE etc. are the buttons in the ribbon, the two bars are added to the master
    page automatically during the converting process.
    A workaround is that we can hide the ribbon by using such a CSS code:
    Best regards,
    Patrick
    Patrick Liang
    TechNet Community Support

  • Changing credentials used in Workflow in SharePoint 2013

    I am  using an HttpSend activity in my SharePoint workflow developed in Visual Studio 2012. The web service I am accessing in the activity requires authentication. Also, the security policy requires that these credentials change in regular
    intervals. What is the best practice for storing the credentials so I don't need to re-associate the workflow every time the web service credentials change. Note: Currently I am using the SharePoint Secure Store where I read the credentials from the store
    at the time I associate the workflow with the list. However, this solution requires a re-association of the workflow when credentials change.

    How do you use the SharePoint Secure Store during association?
    The Secure Store has no client side API.
    Possible solution is to create WCF service which will use the Server-side object model and will return the credentials and then you can use the HttpSend and use the WCF service.

Maybe you are looking for