One pillar of ASP.NET MVC is the extensibility. It means you can add whatever you want wherever you want (or something like that).
Like all frameworks, ASP.NET MVC does not cover all features requested by developers, but offers the opportunity to create your own logic. That means extensibility.
In this example I want to create a simple HTML including the base info for a user profile (Firstname, Lastname and website).
The HTML Looks like this.
document.write('The current user is \u003cstring\u003eUgo Lattanzi\u003c/string\u003e and his website is available \u003ca href=\"http://tostring.it/\" target=\"_blank\"\u003ehere\u003c/a\u003e\r\n');
As you can see the code is really simple, I render the partial into a string, encode the content and return it changing the content type.
Now you are able to use the following code:
In the screenshot below you can see how a client site (not the site that hosts the controller) shows the partial.
Is it cool?