Failed to instantiate the file. Specified list does not exist.

If you have created a module for deploying ASPX pages to the Pages library in your SharePoint site, you may get the below error while trying to manually activate the feature that contains the module.

clip_image001

“Failed to instantiate file “abcd.aspx” from module “Pages”: The specified list does not exist.

This error mostly occurs in the non-English language sites. The reason could be that the URL of the “Pages” library would contain the language specific names like “Pagine”, “Paginas”, and etc. based on the respective language. This happens in spite of retrieving the URL value from the resource files in your module as shown below:

clip_image003

This could be a SharePoint bug.

The solution is to deploy through VS or activate the feature through PowerShell command:

Enable-SPFeature -identity “Feature folder name” -URL SiteURL

Hope this has helped you.

Advertisements

Access managed properties in Control template

Those who have worked with display templates would have worked with accessing managed properties in the item template of the Content Search Web Part (CSWP). There might be a requirement when you want to access the values of the managed properties of each result item in the control template of your CSWP rather than your item template.

The below code does exactly that:

clip_image001

a. $.each() is the jQuery loop function that is used to loop through each result returned

b. ctx.ListData.ResultTables[0].ResultRows retrieves the “RelevantResults” results from the 4 result tables available in the CSWP as shown below:

clip_image002

c. function (key, val) is the function that is going to process each search result.

d. val.EmailDate.toString(): Here only we are accessing the managed property called “EmailDate” from the variable “val” which would hold the values of all managed properties of the result item.