Monday, 19 May 2014

X-Frame-Options response header

The X-Frame-Options HTTP response header can be used to indicate whether or not a browser should be allowed to render a page in a <frame>, <iframe> or <object> . Sites can use this to avoid clickjacking attacks, by ensuring that their content is not embedded into other sites.

Using X-Frame-Options

There are three possible values for X-Frame-Options:

  • DENY

    The page cannot be displayed in a frame, regardless of the site attempting to do so.

  • SAMEORIGIN

    The page can only be displayed in a frame on the same origin as the page itself.

  • ALLOW-FROM uri

    The page can only be displayed in a frame on the specified origin.

Read More>>

What is clickjacking?

What is Clickjacking and How can you prevent it?

Modifying multiple CSS properties in one go using jQuery

jQuery .css() method can be used to set one or more CSS properties for every matched element.

Setting single CSS property
 
$('p').css( "background-color", "yellow" );

 

Setting multiple CSS propertes
 
$('div.header').css({"background-color": "yellow","font-weight": "bold" });

 

Read More

jQuery API - .css() Method

www.w3schools.com >>jQuery - css() Method

Thursday, 8 May 2014

Accessing radio button state using jQuery

You can use the .is(selector) function in jQuery to get the state of a radio button.

Example:

$("#radiobuttonid").is(":checked")

$('input[id="group1"]').is(':checked') 

Also

$("#radiobuttonid").attr("checked", true)
sets the state of the radion button to selected.

Monday, 5 May 2014

ASP.NET MVC Versions and Features

ASP.NET MVC1

Released in Mar 2009, Runs on .Net 3.5 / Visual Studio 2008, WebForm View Engine, Html Helpers, Ajax Helpers, Routing, Unit Testing

ASP.NET MVC2

Released in Mar 2010, Runs on .Net 3.5 / Visual Studio 2008 & .Net 4.0 / Visual Studio 2010, Strongly typed Html Helpers i.e. lambda expression based Html Helpers, Data Annotation Attributes, Client-side validation, UI helpers with automatic scaffolding & customizable templates, Attribute-based model validation on both client and server, Asynchronous controllers

ASP.NET MVC3

Released in Jan 2011, Runs on .Net 4.0 / Visual Studio 2010, Razor view engine, ViewBag dynamic property for passing data from controller to view, Global Action Filters, Better JavaScript support with unobtrusive JavaScript, jQuery Validation, and JSON binding, Improved Support for Data Annotations, Remote Validation, Compare Attribute, Partial-page output caching, Sessionless Controller, Child Action Output Caching, Dependency Resolver, Entity Framework Code First support, Use of NuGet to deliver software and manage dependencies throughout the platform, Good Intellisense support for Razor into Visual Studio

ASP.NET MVC4

Released in Aug 2012, Runs on .Net 4.0, 4.5 / Visual Studio 2012, ASP.NET Web API, Enhancements to default project templates, Mobile project template using jQuery Mobile, Display Modes, Task support for Asynchronous Controllers, Bundling and minification, Support for the Windows Azure SDK

ASP.NET MVC5

Released in Oct 2013, Runs on .Net 4.5, 4.5.1 / Visual Studio 2013, ASP.NET Web API2, One Asp.Net, Asp.Net Identity, ASP.NET Scaffolding, Authentication filters - run prior to authorization filters in the ASP.NET MVC pipeline, Bootstrap in the MVC template

Click here to read about C# Versions and features

Using ViewBag in _ViewStart.cshtml

Trying to set or get some value to/from ViewBag in _ViewStart.cshtml will throw an error when you run the app. There is a workaround for this using ViewContext.Controller.ViewBag.

Here is some sample code

ViewContext.Controller.ViewBag.StoreName = "My New Store";

...

@ViewContext.Controller.ViewBag.StoreName

Read more >>

ViewData mechanics and segmentation

Wednesday, 2 April 2014

what is the purpose of _viewstart.cshtml in ASP.NET MVC?

The _ViewStart.cshtml file will execute at the start of each view's rendering. Any code contained within the code block in this file will execute before any code in the view. Typically, this file will set the layout template to be used by the views in the application:

@{
    Layout = "~/Views/Shared/_Layout.cshtml";
}

The _ViewStart file can be used to define common view code that you want to execute at the start of each View’s rendering. So we can optionally make our Layout selection logic richer than just a basic property set,if required.

Because this code executes at the start of each View, we no longer need to explicitly set the Layout in any of our individual view files (except if we wanted to override the default value above).

An MVC application can have multiple _ViewStart.cshtml files. The order in which these files execute is dependent upon the location of the files in the folder hierarchy and the particular view being rendered. The MVC Runtime will first execute the code in the _ViewStart.cshtml file located in the root of the Views folder. It will then work its way up the folder hierarchy, executing the code in each _ViewStart.cshtml file it finds along the way. For example, if we had_ViewStart.cshtml files in the following locations:

1) Views\_ViewStart.cshtml
2) Views\Home\_ViewStart.cshtml
3) Views\Products\_ViewStart.cshtml

When a view in the Views\Home folder is rendered, the MVC Runtime will first execute the code in file 1 and then execute the code in file 2. Since file 3 is not in the hierarchy of the Views\Home folder, the code in file 3 will not get executed.

Visual Studio 2012 - class names lost default colour and appear in black

Recently some settings on my Visual Studio 2012 got changed somehow and I lost most of the default colour settings in the IDE text editor for C#. Also "User Types" was missing from "Display items" list of "Tools > Options > Environment > Fonts and Colors" dialog box. So I was unable change the colour manually. I managed to bring back the default settings by doing the following.

  1. Delete folders
    • %appdata%\Roaming\Microsoft\Microsoft Visual Studio
    • %appdata%\Roaming\Microsoft\VisualStudio
    • %appdata%\Local\Microsoft\VisualStudio
    • My Documents/Visual Studio 2012/Settings
  2. Open Visual Studio 2012 command prompt (as administrator) and run
    • devenv.exe /setup
    • devenv.exe /ResetSettings
    *devenv.exe location is usually something like C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE.
I think the first step is irrelevant. So if you experience this problem I would suggest you skip step#1 and just follow step#2.

References

no-intellisense-no-indentation

class-names-not-coloured-in-visual-studio

how-can-i-get-user-type-c-sharp-syntax-highlighting-working-again