Skip to main content

Posts

Showing posts from 2014

Could not load file or assembly 'MySQL.Data' or one of its dependencies. Access is denied.

It is very common error with .net assemblies. When someone included dlls from outside, in the project, this kind of exceptions are generic.
Here is the resolution. Open the file location (MySql.Data.dll in this case)Right click on dll and check its properties (it should not be encrypted and should have right access permissions)Run the project after assigning appropriate permissions. It should work now.

Even after this if it does not work. Check in web.config that assembly information is added under <compilation> tag.
It is advisable to included new dlls using nuget package reference. It will update its reference automatically.
Happy Coding!!!

Google search appliance (GSA) sorting and filtering

Working with Google Search Appliance(GSA), sometimes business has requirement of sorting or filtering the results. Browsing the internet did not provide any helpful pointers for the ways to sort or filter the search results therefore I have written these instructions to use sorting & filtering in easy way with examples.

Sorting:
Google Search Appliance(GSA) has provided the tags to sort the results in ascending or descending order. Pages should have meta tags which provides information to GSA box for crawling. Using those tags, sorting can be achieved.

For example: If web pages has a tag

<meta name="title" content="Sumit Bajaj::Passionate Technologist" />

GSA URL should include parameter to sort the results

&sort=meta:title:a  (for arranging all results in ascending order w.r.t title)
&sort=meta:title:d  (for arranging all results in descending order w.r.t title)
Similarly it can be sorted for another meta tags.


Filtering:
Similar like sorting meta ta…

Host Angular App on Heroku

Angular is one of the javascript frameworks which provides new dimensions of writing javascript and on the other hand Heroku is a web hosting platform which allows applications to host. Most importantly, it gives option to host various applications free of cost.

Now considering that an angular project is ready and need to be hosted somewhere so could be accessed publicly. There are few steps which will push the project on Heroku platform and enable the angular project to be browsed by outside world.

Pre-requisite:
1. You should have a Heroku account, if not create one.
2. Heroku toolbelt is installed on machine. Once installed using command prompt, enter
"heroku login" and provide your email and password to log into heroku account.
3. In case you need some domain name, register it in advance. Otherwise you can access the URL which Heroku provides by default.
4. Last and most important point, you should be ready with angular project. Insure that you are not getting any error …

Get ASP.NET Web API to return JSON instead of XML

By default, Web API produces XML but if there is need for JSON, given syntax will do it.

Open WebApiConfig.cs file in solution and add mentioned line in it as shown in example.

publicstaticvoid Register(HttpConfiguration config)         {             config.Routes.MapHttpRoute(                 name: "DefaultApi",                 routeTemplate: "api/{controller}/{id}",                 defaults: new { id = RouteParameter.Optional }             );
//To produce JSON format add this line of code   config.Formatters.JsonFormatter.SupportedMediaTypes.Add(newMediaTypeHeaderValue("text/html"));         }
Kindly provide your valuable comments if you find the post helpful.

Custom control in Sitecore

Although Sitecore has provided most of the features out of box, yet sometime we need custom control to be created as per project need. In the given example, we will create a custom control "Pubish with media". Purpose of this custom button is to publish the content including media associated with it.

Follow the mentioned steps to make custom control.

Step1:
Create a cs file in your project and name it as "PublishWithMedia.cs". Open the file and write the code. In this example,  we are showing code for publishing media with content item.

using System;
using System.Collections.Specialized; using Sitecore; using Sitecore.Data; using Sitecore.Data.Items; using Sitecore.Diagnostics; using Sitecore.Globalization; using Sitecore.Links; using Sitecore.Publishing; using Sitecore.Shell.Framework; using Sitecore.Shell.Framework.Commands; using Sitecore.Web.UI.Sheer; using Sitecore.Workflows;
namespace MyProject.CustomControl { ///<summary> /// Represents the Publish Item command. ///<…

Github cherry picking

What is cherry picking ?
Cherry picking is plucking selective code to push to another branch. Sometime team is working on several modules and there is urgency to fix some production issue and deploy it.

We can have two ways of doing it
1. Create a separate branch from master (production branch) , for example name it as "branch1" and fix the bug and merge that branch into master back.

2. Fix the bug in existing branch and cherry pick it in master branch. This way only selective changes would be pushed to master and not all code.

Whenever we push some code in git, it creates a unique commit id.
For example:


Unique commit id looks like shown in green box



Copy that commit id which you want to cherry pick. Git checkout to master branch (where you want to cherry pick)
$ command: git checkout master
Cherry pick the selected commit by passing commit id.
$ git cherry-pick b38adf46f21c963b6e85a804ef3942ad8d0b4e4d
Selected commit will be merged into master Now you can check the status a…

Add Rich Text Full Editor in Sitecore template

It is very common requirement and very easy to add Rich Text Full editor in Sitecore.

Steps:
1. Open Template and make the field as "Rich Text" field








2. Add "/sitecore/system/Settings/HTML Editor Profiles/Rich Text Full" to the source field next to it.

3. Save the template and that's it.

Create item with the new template and click on "Show Editor" link. It should show rich text full editor.


Provide your valuable comments if this post resolved your problem.

Creating angular project at snap of fingure

Open CMD prompt (Run as Administrator)




Goto directory (where you want to create website) and type
yo angular:project_name



You are done!! It will create all dependent files in the directory.


If you are using IIS server, create a website and point it to directory/app folder. Browse the website for example: http://localhost, it will show you beautiful index page.

Pre-Requisite:
Yeoman (the scoffolding tool) should be installed. Refer Yoeman website for more details.

Common Issue: When scoffolding angular project using yo command, if in between you are receiving errors, then execute this line on CMD prompt;

C:\MyProject>git config --global url."https://" .insteadOf git://
Author: Sumit Bajaj
Thanks for reading!!

HTTP Error 500.19 - Internal Server Error

The requested page cannot be accessed because the related configuration data for the page is invalid.

<staticContent> <mimeMap fileExtension=".woff" mimeType="application/font-woff"/> </staticContent>
This error occurs when there is a problem reading the configuration file for the Web server or Web application. In some cases, the event logs may contain more information about what caused this error.

Solution:
1. Open IIS and click on hosted website
2. On the Featured View tab, double click on MIME type icon and check if .woff extension is present. If on click it gives error not to worry.
3. Open web.config file of project solution and check if .woff mimemap entry is present. If yes, remove that entry.
4. Go back to IIS and follow Step 1 and Step 2. It should show .woff extension now.
5. Check your website and it should work now.

Author: Sumit Bajaj
Thanks for Reading. Have a great time.



Uploading an Excel and Importing the data in database

This is very common requirement to read the data from uploaded excel and import it in database. Earlier it was a tedious task but not now, thanks to Nuget packages where you get so many utilities to make your life easy. In this post, we will also use Nuget package and perform the task of uploading excel and importing the data in database.

There are two steps to perform this,
1. To upload the excel file on server
2. Read the uploaded file and import the data to database

Step1: To upload the excel file on server

   <asp:FileUpload ID="excel_upload" runat="server"/>



    if (excel_upload.HasFile)
    {
bool upload_file = true;
string file_upload = Path.GetExtension(excel_upload.FileName.ToString());
if (file_upload.Trim().ToLower() == ".xls" | 
            file_upload.Trim().ToLower() == ".xlsx")
       {
// Save excel file onto Server
          xlsUpload.SaveAs(Server.MapPath("~/Uploads/" + excel_upload.FileName.ToString());
       }
    }


Step2…