<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" gd:etag="W/&quot;A0YAQX0-fip7ImA9WhRWE0s.&quot;"><id>tag:blogger.com,1999:blog-28292230</id><updated>2011-12-31T23:05:40.356+01:00</updated><category term="toolkit" /><category term="virtualization" /><category term="Visual Studio" /><category term="Microsoft" /><category term="MVC" /><category term="Blob" /><category term="Grafica" /><category term="Continous integration" /><category term="Code Analysis" /><category term="Computer Grid" /><category term="Report" /><category term="Crittografia" /><category term="Azure" /><category term="Ajax" /><category term="Code coverage" /><category term="openoffice" /><category term="Sql" /><category term="winform" /><category term="Npgsql" /><category term="JQuery" /><category term="Games" /><category term="Mozilla" /><category term="Unit test" /><category term="SqlServer" /><category term="asp.net 2.0" /><category term="Cruise Control" /><category term="RDP" /><category term="ibatis" /><category term="Analisys Services" /><category term="toRepix" /><category term="office" /><category term="OLAP" /><category term="personal" /><category term="refactor" /><category term="Javascript" /><category term="Cloud Computing" /><category term="Asp.Net" /><category term="controls" /><category term="security" /><category term="voip" /><category term="Perl" /><category term="Programmazione" /><category term="OpenSource" /><category term="SubVersion" /><category term="C#" /><category term="PostGreSQL" /><category term="Certificazioni" /><category term="Database" /><category term="Linq" /><category term="Nhibernate" /><category term="Search Engine" /><category term="FullText" /><category term="Wiki" /><category term="Mantis" /><category term="Training" /><category term="WPF" /><category term="datamapper" /><category term="Entity Framework" /><category term="Silverlight" /><title>Mauro Bennici</title><subtitle type="html">Articles, tips and tricks, news and other little things to do better our job!</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>101</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/maurobennici" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="maurobennici" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;CkIBRncyeip7ImA9WhdTFEs.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-1284034626617914560</id><published>2011-07-12T10:49:00.001+02:00</published><updated>2011-07-12T10:49:17.992+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-07-12T10:49:17.992+02:00</app:edited><title>Topshelf</title><content type="html">&lt;p&gt;A simple and very usefull project to host windows services programmatically.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://topshelf-project.com/"&gt;http://topshelf-project.com/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;And so avoid to use InstallUtil bat every build &lt;img style="border-bottom-style: none; border-right-style: none; border-top-style: none; border-left-style: none" class="wlEmoticon wlEmoticon-winkingsmile" alt="Winking smile" src="http://lh4.ggpht.com/-1LgTITlgmaI/ThwKjHU7juI/AAAAAAAAA7A/Jj-WwTBONPs/wlEmoticon-winkingsmile%25255B2%25255D.png?imgmax=800" /&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-1284034626617914560?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/1284034626617914560/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=1284034626617914560" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/1284034626617914560?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/1284034626617914560?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2011/07/topshelf.html" title="Topshelf" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/-1LgTITlgmaI/ThwKjHU7juI/AAAAAAAAA7A/Jj-WwTBONPs/s72-c/wlEmoticon-winkingsmile%25255B2%25255D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CE8EQ386fip7ImA9Wx9XFkk.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-966955771263088124</id><published>2011-01-10T08:00:00.026+01:00</published><updated>2011-01-10T08:00:02.116+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-10T08:00:02.116+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Ajax" /><category scheme="http://www.blogger.com/atom/ns#" term="Asp.Net" /><category scheme="http://www.blogger.com/atom/ns#" term="C#" /><category scheme="http://www.blogger.com/atom/ns#" term="Microsoft" /><title>Minimize Javascript and CSS files</title><content type="html">One of the first optimization I've done to improve the &lt;b&gt;network performance&lt;/b&gt; of a website was to decrease the number, the position and the size of the files &lt;b&gt;Javascript &lt;/b&gt;and &lt;b&gt;Css &lt;/b&gt;included on a web page.&lt;br /&gt;
&lt;br /&gt;
In order to render fastest a page the Css files have to be at the begin of the page, the Javascript files at the end.&lt;br /&gt;
&lt;br /&gt;
Aggregate more files, of the same type, in one single file (or more files separated for macro area) reduces the elaboration time.&lt;br /&gt;
&lt;br /&gt;
So &lt;b&gt;minify &lt;/b&gt;that files is the last operation. Minified a file means remove all characters, white space etc that are necessary to write and debug an application but are useless for a browser. This operation reduces the files size.&lt;br /&gt;
&lt;br /&gt;
On the continuous integration server I use the &lt;a href="http://aspnet.codeplex.com/releases/view/40584"&gt;&lt;span class="CodePlexPageHeader" id="TitleLabel"&gt;Microsoft Ajax Minifier 4.0&lt;/span&gt;&lt;/a&gt; with a C# console program that search and minimizes all files in a batch process ;)&lt;br /&gt;
&lt;br /&gt;
The source project could be downloaded here: &lt;a href="http://www.torepix.com/public/blog/AjaxMinBatch.src.zip"&gt;Ajax Minifier Batch Source&lt;/a&gt;&lt;br /&gt;
The &lt;b&gt;executable &lt;/b&gt;here:&amp;nbsp; &lt;a href="http://www.torepix.com/public/blog/AjaxMinBatch.bin.zip"&gt;Ajax Minifier Batch Bin&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
EX: &lt;i&gt;AjaxMinBatch.exe -D "c:\mySolution\web" -OW true -A true&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
Search and overwrite all Css and Javascript files in the directory and subdirectory.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-966955771263088124?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/966955771263088124/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=966955771263088124" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/966955771263088124?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/966955771263088124?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2011/01/minimize-javascript-and-css-files.html" title="Minimize Javascript and CSS files" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;AkIESHY7fyp7ImA9Wx9RGUg.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-5515859380284702453</id><published>2010-12-21T20:08:00.001+01:00</published><updated>2010-12-21T20:08:29.807+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-12-21T20:08:29.807+01:00</app:edited><title>toRepix 2.0</title><content type="html">Check out this SlideShare Presentation: &lt;div style="width:425px" id="__ss_6274697"&gt;&lt;strong style="display:block;margin:12px 0 4px"&gt;&lt;a href="http://www.slideshare.net/maurobennici/presentatione-torepix-20" title="Presentatione toRepix 2.0"&gt;Presentatione toRepix 2.0&lt;/a&gt;&lt;/strong&gt;&lt;object id="__sse6274697" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=presentationetorepix2-0-101221073829-phpapp01&amp;stripped_title=presentatione-torepix-20&amp;userName=maurobennici" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed name="__sse6274697" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=presentationetorepix2-0-101221073829-phpapp01&amp;stripped_title=presentatione-torepix-20&amp;userName=maurobennici" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="padding:5px 0 12px"&gt;View more &lt;a href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a href="http://www.slideshare.net/maurobennici"&gt;maurobennici&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-5515859380284702453?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/5515859380284702453/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=5515859380284702453" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/5515859380284702453?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/5515859380284702453?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2010/12/torepix-20.html" title="toRepix 2.0" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;C0UNRnc_eSp7ImA9Wx9SFU0.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-4286548371448137153</id><published>2010-12-04T23:18:00.002+01:00</published><updated>2010-12-04T23:21:37.941+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-12-04T23:21:37.941+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="toRepix" /><title>toRepix 2</title><content type="html">The new version of &lt;a href="http://www.torepix.com/"&gt;&lt;b&gt;toRepix&lt;/b&gt;&lt;/a&gt; is now in &lt;b&gt;Beta2&lt;/b&gt;. It will be released on the first quarter of&amp;nbsp; the 2011. That new version will include:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Better &lt;b&gt;WebDav&lt;/b&gt; support for Office 2010.&lt;/li&gt;
&lt;li&gt;New synchronizing Windows &lt;b&gt;Plugin&lt;/b&gt;.&lt;/li&gt;
&lt;li&gt;File versions&amp;nbsp; comparer.&lt;/li&gt;
&lt;li&gt;New &lt;b&gt;OCR&lt;/b&gt; service with more than 10 languages supported.&lt;/li&gt;
&lt;li&gt;File signer &lt;b&gt;Certificate information&lt;/b&gt;.&lt;/li&gt;
&lt;li&gt;Improved files approval operation.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Email&lt;/b&gt; and &lt;b&gt;MSN&lt;/b&gt; notifications.&lt;/li&gt;
&lt;/ul&gt;Stay tuned!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-4286548371448137153?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.torepix.com" title="toRepix 2" /><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/4286548371448137153/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=4286548371448137153" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/4286548371448137153?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/4286548371448137153?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2010/12/torepix-2.html" title="toRepix 2" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;Ak4AQn86eCp7ImA9WxFTEk0.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-4526260544435202779</id><published>2010-04-02T13:47:00.002+02:00</published><updated>2010-04-02T13:49:03.110+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-04-02T13:49:03.110+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="security" /><category scheme="http://www.blogger.com/atom/ns#" term="Crittografia" /><title>New License Software</title><content type="html">I creates a new software to generate and manage .NET licenses.&lt;br /&gt;
&lt;br /&gt;
I called it "&lt;a href="http://www.licenseon.com/"&gt;LicenseOn&lt;/a&gt;". It allows developers to secure theirs applications with a lot of options: trial mode, custom data, time bomb, max number of users etc..&lt;br /&gt;
&lt;br /&gt;
Have a look and try the standard version, all your comments are really &lt;b&gt;welcome&lt;/b&gt;!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-4526260544435202779?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.licenseon.com" title="New License Software" /><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/4526260544435202779/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=4526260544435202779" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/4526260544435202779?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/4526260544435202779?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2010/04/new-license-software.html" title="New License Software" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DEYGQn06fyp7ImA9WxBXGU4.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-4443744593612300885</id><published>2010-01-31T12:08:00.000+01:00</published><updated>2010-01-31T12:08:43.317+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-31T12:08:43.317+01:00</app:edited><title>Memopal: Status</title><content type="html">&lt;a href="http://apps.memopal.com/r/?UDIHPgI1UTEINwE0"&gt;Memopal: Status&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-4443744593612300885?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://apps.memopal.com/r/?UDIHPgI1UTEINwE0" title="Memopal: Status" /><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/4443744593612300885/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=4443744593612300885" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/4443744593612300885?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/4443744593612300885?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2010/01/memopal-status.html" title="Memopal: Status" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;C08FRX89fSp7ImA9WxBREUw.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-8397786127106312441</id><published>2009-12-29T19:36:00.000+01:00</published><updated>2009-12-29T19:36:54.165+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-29T19:36:54.165+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Report" /><category scheme="http://www.blogger.com/atom/ns#" term="C#" /><title>Free .Net Report</title><content type="html">I'm trying a free (apache license) .net tool called &lt;a href="http://www.fyireporting.com/products.html"&gt;RDL Project&lt;/a&gt; developed by fyiReporting Software LLC.&lt;br /&gt;
Based on&lt;a href="http://www.microsoft.com/sqlserver/2008/en/us/reporting.aspx"&gt; RDL Microsoft format&lt;/a&gt; this project includes some controls to manage reports easily.&lt;br /&gt;
&lt;br /&gt;
Do you know more projects based on RDL specifics not Microsoft target?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-8397786127106312441?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.fyireporting.com/products.html" title="Free .Net Report" /><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/8397786127106312441/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=8397786127106312441" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/8397786127106312441?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/8397786127106312441?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2009/12/free-net-report.html" title="Free .Net Report" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;C0IBR3o8eyp7ImA9WxBSGU4.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-5560789006509344203</id><published>2009-12-27T17:32:00.000+01:00</published><updated>2009-12-27T17:32:36.473+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-27T17:32:36.473+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="winform" /><category scheme="http://www.blogger.com/atom/ns#" term="controls" /><title>Big Sale Purecomponents</title><content type="html">Until the 28th December Purecomponents offers his winform control suite at only $39.&lt;br /&gt;
I used his free PurePanel control for year and I'm so happy to buy all the controls really cheap ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-5560789006509344203?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.purecomponents.com/" title="Big Sale Purecomponents" /><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/5560789006509344203/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=5560789006509344203" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/5560789006509344203?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/5560789006509344203?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2009/12/big-sale-purecomponents.html" title="Big Sale Purecomponents" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DkIHQHw4fCp7ImA9WxNaFkw.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-6398955375711405873</id><published>2009-11-30T21:55:00.000+01:00</published><updated>2009-11-30T21:55:31.234+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-30T21:55:31.234+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="personal" /><title>Fotografica 2009</title><content type="html">Saturday I attended to Fotografica 2009. The event, sponsored by Canon, based on photos and videos hardware news.&lt;br /&gt;
I showed my portfolio to a professional photo editor and the result wasn't so bad. So I'll continue to publish my photos on 365photopaths.blogspot.com :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-6398955375711405873?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/6398955375711405873/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=6398955375711405873" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/6398955375711405873?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/6398955375711405873?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2009/11/fotografica-2009.html" title="Fotografica 2009" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;D0AEQ3kyfip7ImA9WxNaFUw.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-8769281810954437335</id><published>2009-11-29T18:28:00.000+01:00</published><updated>2009-11-29T18:28:22.796+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-29T18:28:22.796+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Training" /><title>TechDays WPC 2009</title><content type="html">My first WPC was an incredible experience.&lt;br /&gt;
&lt;br /&gt;
What Microsoft prepared for us it's so good that thinking about daily work isn't so exciting :(&lt;br /&gt;
&lt;br /&gt;
Who works with legacy code remains with a little sad feeling after all.&lt;br /&gt;
&lt;br /&gt;
See you the next year ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-8769281810954437335?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://techdays-wpc.it/" title="TechDays WPC 2009" /><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/8769281810954437335/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=8769281810954437335" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/8769281810954437335?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/8769281810954437335?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2009/11/techdays-wpc-2009.html" title="TechDays WPC 2009" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DUYMRXk4eSp7ImA9WxNbFEs.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-1281253745278362568</id><published>2009-11-17T15:13:00.000+01:00</published><updated>2009-11-17T15:13:04.731+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-17T15:13:04.731+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="voip" /><title>SjPhone</title><content type="html">Today I installed some SjPhone and&amp;nbsp; I incredible found a trojan in the setup package!&lt;br /&gt;
&lt;br /&gt;
The version of the software is SJphone-1.65.2637.exe&lt;br /&gt;
&lt;br /&gt;
The trojan,&amp;nbsp; WordIcon.exe, &amp;nbsp; is in C:\WINDOWS\Installer\{E1A45BFD-FD3E-45D7-AD5C-A29A506C2EB3}&lt;br /&gt;
&lt;br /&gt;
Pay attention!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-1281253745278362568?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/1281253745278362568/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=1281253745278362568" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/1281253745278362568?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/1281253745278362568?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2009/11/sjphone.html" title="SjPhone" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;D08DQHc_eyp7ImA9WxNUGEg.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-7701367322014304338</id><published>2009-11-10T13:24:00.000+01:00</published><updated>2009-11-10T13:24:31.943+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-10T13:24:31.943+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="virtualization" /><title>VmWare player 3.0</title><content type="html">The VmWare player 3.0 (&lt;a href="http://www.vmware.com/support/player30/doc/releasenotes_player3.html"&gt;more info here&lt;/a&gt;) is the response to the Windows XP mode for Windows 7 pro/bussiness.&lt;br /&gt;
Great news: now it's possible to create new virtual machine. Use 3d graphics, usb devices and advanceed network setup. This version can't record, replay, or snapshot a machine. To do it you need the new VmWare Workstation 7.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.vmware.com/support/player30/doc/releasenotes_player3.html"&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-7701367322014304338?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.vmware.com/support/player30/doc/releasenotes_player3.html" title="VmWare player 3.0" /><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/7701367322014304338/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=7701367322014304338" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/7701367322014304338?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/7701367322014304338?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2009/11/vmware-player-30.html" title="VmWare player 3.0" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;D0MGQH4yfip7ImA9WxNVEUw.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-4108639520919892663</id><published>2009-10-21T10:57:00.000+02:00</published><updated>2009-10-21T10:57:01.096+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-21T10:57:01.096+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Search Engine" /><category scheme="http://www.blogger.com/atom/ns#" term="Microsoft" /><title>Add a website to Bing</title><content type="html">The page to add a new website on the database  of  &lt;a href="http://www.bing.com/"&gt;Bing &lt;/a&gt;is here:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.bing.com/docs/submit.aspx"&gt;http://www.bing.com/docs/submit.aspx&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
If you like, you could find more information to improve your site ranking in the doc section&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.bing.com/docs"&gt;http://www.bing.com/docs&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
I didn't found&amp;nbsp; if there is a particular way to insert a blog.&lt;br /&gt;
My photoblog (&lt;a href="http://365photopaths.blogspot.com/"&gt;365 photo paths&lt;/a&gt;) on blogspot doesn't appear but all referring sites are on the top :S&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-4108639520919892663?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.bing.com" title="Add a website to Bing" /><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/4108639520919892663/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=4108639520919892663" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/4108639520919892663?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/4108639520919892663?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2009/10/add-website-to-bing.html" title="Add a website to Bing" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;AkMEQ3g_fCp7ImA9WxNVEEw.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-2664430849467190169</id><published>2009-10-20T08:00:00.008+02:00</published><updated>2009-10-20T08:00:02.644+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-20T08:00:02.644+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Javascript" /><category scheme="http://www.blogger.com/atom/ns#" term="JQuery" /><title>Microsoft Ajax Library Preview 6</title><content type="html">Microsoft released the last &lt;a href="http://aspnet.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=34488"&gt;Ajax Library&lt;/a&gt; (preview 6).&lt;br /&gt;
&lt;br /&gt;
This version is an improvement of what will be the new Asp.net 4.0 feature called Client Binding, the possibility to work client side only with Javascript and services.&lt;br /&gt;
The library is also better integrated with jQuery so we can call Microsoft script like jQuery plugin.&lt;br /&gt;
&lt;br /&gt;
The team also released a Javascript Minifier, a tool to reduce the size of our scripts. There are a lots of tools to accomplish this, but no one is integrated with MSBuild or could be used as component ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-2664430849467190169?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://aspnet.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=34488" title="Microsoft Ajax Library Preview 6" /><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/2664430849467190169/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=2664430849467190169" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/2664430849467190169?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/2664430849467190169?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2009/10/microsoft-ajax-library-preview-6.html" title="Microsoft Ajax Library Preview 6" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CEYMQX88eyp7ImA9WxNWGUs.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-1182240404383293705</id><published>2009-10-19T16:23:00.000+02:00</published><updated>2009-10-19T16:23:00.173+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-19T16:23:00.173+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="asp.net 2.0" /><title>Login Control</title><content type="html">In ASP.NET 2.0 la Microsoft ha aggiunto o migliorato molti controlli, quasi cinquanta, per consentire allo sviluppatore di effettuare meglio ed in meno tempo molte funzioni di uso comune. Una delle funzioni che è stata rivista in maniera più pesante è quella di autenticazione ed autorizzazione dell'utente. Per chi non lo sapesse ricordo che l'autorizzazione è quel processo composto da procedure attraverso le quali riconoscere un utente della nostra applicazione, la forma più comune è un form dove inserire username e password, mentre l'autorizzazione è composta da tutti quei processi che verificano volta per volta cosa un utente può fare e cosa no &lt;a href="http://aspnet.html.it/articoli/leggi/1616/login-control/1/"&gt;...&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-1182240404383293705?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://aspnet.html.it/articoli/leggi/1616/login-control/1/" title="Login Control" /><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/1182240404383293705/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=1182240404383293705" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/1182240404383293705?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/1182240404383293705?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2009/10/login-control.html" title="Login Control" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CkMEQXc8eCp7ImA9WxNVEUs.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-865243985780800010</id><published>2009-10-16T10:33:00.018+02:00</published><updated>2009-10-21T23:26:40.970+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-21T23:26:40.970+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="MVC" /><title>Recensione Pro ASP.NET MVC Framework</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_K9b1YLUHFG8/Ss71nyW0t6I/AAAAAAAAAxc/nbqVsOOn9ZU/s1600-h/proaspnetmvc.gif" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_K9b1YLUHFG8/Ss71nyW0t6I/AAAAAAAAAxc/nbqVsOOn9ZU/s320/proaspnetmvc.gif" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;Il libro, scritto da Steven Sanderson, si propone lo scopo di approfondire nei dettagli il nuovo framework Microsoft &lt;a href="http://draft.blogger.com/url=http://www.asp.net/mvc/"&gt;ASP.NET MVC&lt;/a&gt;.&lt;br /&gt;
MVC è un pattern che permette di disaccoppiare il codice tra il Model, il Controller e le View rendendo la nostra applicazione più facile da modificare e manutenere.&lt;br /&gt;
&lt;br /&gt;
Come si legge nell'introduzione il libro è indirizzato a chi già conosce C# e ha lavorato con ASP.NET, o con tecnologie equivalenti quali PHP 5 o Ruby on rails.&lt;br /&gt;
Inoltre non vuole essere una mera guida ad ASP.NET MVC ma una guida approfondita evitando esempi perfetti per un libro ma inapplicabili in applicazioni reali.&lt;br /&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Il libro è stato diviso in due parti per sedici capitoli.&lt;br /&gt;
La prima parte,composta da sei capitoli da leggere in successione, si occupa di far conoscere il pattern MVC, le sue applicazioni, i suoi pro e contro, l'implementazione Microsoft.&lt;br /&gt;
La seconda, di dieci capitoli, approfondisce e sviscera nel dettaglio ogni aspetto visto in carrellata nella prima parte.&lt;br /&gt;
&lt;br /&gt;
Nel &lt;b&gt;primo capitolo&lt;/b&gt; ci viene presentata,in chiave Microsoft, la storia della pagine web dinamica dall'inizio ad oggi e il perché si è arrivati a &lt;a href="http://www.asp.net/mvc/"&gt;ASP.NET MVC&lt;/a&gt;.&lt;br /&gt;
Il &lt;b&gt;secondo capitolo&lt;/b&gt; ci aiuta nella configurazione della macchina, nell'installazione di tutto il necessario per iniziare. Vi è un tutorial per creare la nostra prima applicazione, un form, che ci permette di capire la potenza e la velocità di sviluppo del nuovo framework. Interessante il fatto che nonostante MVC abbia dei template pronti l'autore faccia eliminare i file superflui per non confondere il lettore e "costringerlo" a focalizzarsi su ogni singolo passo.&lt;br /&gt;
&lt;br /&gt;
Il &lt;b&gt;capitolo tre&lt;/b&gt; si occupa dei requisiti necessari per utilizzare MVC partendo da una carrellata sull'evoluzione delle architetture web nel corso degli anni. Nel capitolo si parla anche delle novità introdotte in .NET 3.5 e &lt;a href="http://msdn.microsoft.com/en-us/library/bb308966.aspx"&gt;C# 3.0&lt;/a&gt; come LINQ e Lambda Expressions per passare all'&lt;b&gt;inversione di controllo&lt;/b&gt; (IOC) con &lt;a href="http://www.castleproject.org/"&gt;Castle &lt;/a&gt;e finire con i test automatici, presenti su tutto il codice del libro, con &lt;a href="http://www.nunit.org/index.php%20"&gt;Nunit &lt;/a&gt;e &lt;a href="http://code.google.com/p/moq/"&gt;Moq&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Con il &lt;b&gt;capitolo quattro&lt;/b&gt; iniziamo a vedere davvero MVC con un'applicazione reale per il commercio elettronico. Come da premessa, il capitolo seppure introduttivo non è per nulla banale.&lt;br /&gt;
L'analisi e l'architettura dell'applicazione partono dalla definizione delle classi e delle funzioni che la nostra applicazione dovrà utilizzare, continuando alla struttura del database, alla configurazione di LinqToSql per il mapping tra le tabelle e le nostri classi, alla creazione delle viste, dei controller e di specifici percorsi di routing per utilizzarli.&lt;br /&gt;
Nella pagine con lo sfondo grigio abbiamo poi tutto il codice di test per essere sicuri che quanto previsto nell'analisi sia stato implementato correttamente.&lt;br /&gt;
Ci ritroviamo così nel &lt;b&gt;capitolo cinque&lt;/b&gt; per dare alla nostra applicazione uno stile, una navigazione e un carrello ponendo l'accento al Model, la M di MVC. Chiudiamo la prima parte del libro con il &lt;b&gt;sesto capitolo &lt;/b&gt;occupandoci della parte di autenticazione ed autorizzazione, modifica del catalogo su database e l'upload dell'immagine dei prodotti.&lt;br /&gt;
&lt;br /&gt;
Questa prima parte seppur definita introduttiva è così completa da poter quasi essere un libro separato. La realizzazione degli esempi ci regala uno spaccato di come il modo di vedere un'applicazione WEB sia radicalmente cambiata negli ultimi anni ponendo al primo posto dell'architettura la fase di test e su questa vengono posti gli altri frammenti del puzzle. Rendere l'applicazione già pronta per essere estesa con dei plugin e l'interfacciamento al database tramite &lt;b&gt;ORM &lt;/b&gt;sono un must.&lt;br /&gt;
&lt;br /&gt;
Con il &lt;b&gt;settimo capitolo&lt;/b&gt; entriamo nella seconda parte del libro, quella più tecnica. Qui troviamo una dettagliata spiegazione di come funziona ASP.NET MVC.&lt;br /&gt;
Viene sezionato un progetto standard cartella per cartella, vi è inoltre la spiegazione e la sequenza di esecuzione degli eventi che intercorrono da una richiesta fino alla visualizzazione della pagina.&lt;br /&gt;
&lt;br /&gt;
L'&lt;b&gt;ottavo capitolo&lt;/b&gt; tratta della gestione dell' url e conseguente &lt;b&gt;routing&lt;/b&gt;. MVC utilizza l'url della pagina per sapere a quale controller dobbiamo lasciare l'elaborazione della richiesta e quali parametri sono stati passati alla stessa. L'autore ci mostra non solo come cambiare le regole di routing ma anche come creare nuove regole e nuovi gestori di routing nel caso in cui avessimo bisogno di personalizzare completamente il motore di MVC.&lt;br /&gt;
Il &lt;b&gt;nono capitolo&lt;/b&gt; di conseguenza si occupa dei &lt;b&gt;controller &lt;/b&gt;e delle action. Come detto i controller si occupano di ricevere i dati della richiesta, elaborarli e inviare i dati risultanti ad una view. In questa carrellata di possibilità vengono prese in considerazioni anche le opzioni aggiuntive come i filtri, la cache e le risposte di dati in formato &lt;a href="http://json.org/"&gt;JSON &lt;/a&gt;per le operazione AJAX.&lt;br /&gt;
&lt;br /&gt;
Il &lt;b&gt;capitolo dieci&lt;/b&gt; espone le diverse tecniche che MVC mette a disposizione per le &lt;b&gt;View&lt;/b&gt;. Vengono analizzati pro e contro del codice inline, dei nuovi HTML Helpers, dei server controls, delle Partial views e di Html.RenderAction(). E se nessuna di queste dovesse soddisfare le nostre esigenze vediamo come implementare un motore di view custom, nello specifico un render XSLT, e come utilizzare altri motori di view (NVelocity, Brail, Spark, NHaml).&lt;br /&gt;
&lt;br /&gt;
Arriviamo quindi a parlare di &lt;b&gt;Model &lt;/b&gt;e &lt;b&gt;Binding &lt;/b&gt;nel &lt;b&gt;capitolo undici&lt;/b&gt;. L'autore dopo qualche pagina di esempio sul bind di oggetti custom e collezioni passa alla validazione del nostro modello dati sia lato client che lato server. Mostra come creare un form multistep (wizard) implementando anche un captcha e un sistema di anti-tampering.&lt;br /&gt;
&lt;br /&gt;
Il &lt;b&gt;capitolo dodici&lt;/b&gt; riprende in parte il capitolo dieci per parlarci di &lt;b&gt;Ajax &lt;/b&gt;e Javascript. Nel capitolo si fa uso di &lt;a href="http://jquery.com/"&gt;JQuery &lt;/a&gt;per gestire dati in formato JSON e XML oltre al supporto nativo per AJAX incluso nel framework.&lt;br /&gt;
&lt;br /&gt;
In un libro così completo non poteva mancare un capitolo, il &lt;b&gt;tredicesimo&lt;/b&gt;, sulla sicurezza. Il capitolo mostra sia le tecniche di attacco che quelle di difesa per testare la sicurezza delle nostre applicazioni e per meglio difenderle. Gli esempi sono chiari e possono essere applicate a qualsiasi applicazione esistente sia esso MVC o meno.&lt;br /&gt;
&lt;br /&gt;
Una volta finito il nostro lavoro non ci resta che pubblicarlo. Il &lt;b&gt;capitolo quattordici &lt;/b&gt;ci guida alla diverse impostazione per i diversi IIS a nostra disposizione.&lt;br /&gt;
Nel &lt;b&gt;capitolo quindici&lt;/b&gt; ci viene ricordato che MVC è comunque basato su ASP.NET e quindi possiamo continuare ad usare tutte le classi messe a disposizione da quest'ultimo. Rivediamo quindi le membership per l'autenticazione e l'autorizzazione, i cookie, la cache, le performance con i trace, l'internalizzazione etc..&lt;br /&gt;
Chiudiamo con il &lt;b&gt;capitolo sedici&lt;/b&gt; facendo convivere ASP.NET classico, basato su WebForm, con ASP.NET MVC con uno sguardo al porting di applicazioni preesistenti al nuovo framework di sviluppo.&lt;br /&gt;
&lt;br /&gt;
Il libro appare ben rilegato e adatto a farci compagnia sulla scrivania per essere consultato spesso senza problemi, è inoltre presente un indice analitico chiaro e di facile consultazione.&lt;br /&gt;
Fin dalle prime battute se ne comprende lo spessore. Non ho trovato un solo capitolo in cui qualcosa sia data per scontata, per questo vengono presi in esame un alto numero di possibile migliorie, domande ed obiezioni. Trovo molto proficuo, nel modo di esporre il contenuto, l'assenza di prese di posizione rigide sostituite con analisi chiare e motivate dei possibili modi di procedere, criticando le cose che non funzionano quando presenti, lasciando così al lettore la completa libertà di scelta.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-865243985780800010?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/865243985780800010/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=865243985780800010" title="1 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/865243985780800010?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/865243985780800010?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2009/10/recensione-pro-aspnet-mvc-framework.html" title="Recensione Pro ASP.NET MVC Framework" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_K9b1YLUHFG8/Ss71nyW0t6I/AAAAAAAAAxc/nbqVsOOn9ZU/s72-c/proaspnetmvc.gif" height="72" width="72" /><thr:total>1</thr:total></entry><entry gd:etag="W/&quot;AkAEQXY5eyp7ImA9WxNWFUQ.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-2534080274586127768</id><published>2009-10-15T11:25:00.000+02:00</published><updated>2009-10-15T11:25:00.823+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-15T11:25:00.823+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="JQuery" /><title>Autocomplete</title><content type="html">&lt;a href="http://www.codeplex.com/flexbox"&gt;JQuery FlexBox&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-2534080274586127768?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/2534080274586127768/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=2534080274586127768" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/2534080274586127768?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/2534080274586127768?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2009/10/autocomplete.html" title="Autocomplete" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CEQCQXw7cCp7ImA9WxNWFUw.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-2748441984964214168</id><published>2009-10-14T11:26:00.000+02:00</published><updated>2009-10-14T11:26:00.208+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-14T11:26:00.208+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="JQuery" /><title>Select Box Manipulation</title><content type="html">&lt;a href="http://www.texotela.co.uk/code/jquery/select/"&gt;JQuery SelectBox&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-2748441984964214168?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/2748441984964214168/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=2748441984964214168" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/2748441984964214168?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/2748441984964214168?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2009/10/select-box-manipulation.html" title="Select Box Manipulation" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;Dk4DQHY8fCp7ImA9WxNWFkU.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-8512492318001879992</id><published>2009-10-13T12:09:00.002+02:00</published><updated>2009-10-16T11:22:51.874+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-16T11:22:51.874+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="JQuery" /><title>jQuery IFrame Plugin</title><content type="html">Although I hate using IFrame, sometimes it's impossible to avoid them.&lt;br /&gt;
&lt;br /&gt;
The impressive use of Javascript and the relative decrement of people using IE had forced designers and programmers to be browser independent more than in the past.&lt;br /&gt;
Personally I like jQuery but the &lt;span style="background-color: #f9cb9c;"&gt;$(document).ready()&lt;/span&gt; function works only in specific page when you called it.&lt;br /&gt;
&lt;br /&gt;
The IFrame Plugin gets over this limit and with the &lt;span style="background-color: #f9cb9c;"&gt;$.frameReady()&lt;/span&gt; function allow us to wait all the IFrame in the page and specify CSS, Javascript, Json formatted data etc we need to pass it!&lt;br /&gt;
&lt;br /&gt;
From the plugin site:&lt;br /&gt;
&lt;ol style="background-color: #f6b26b; color: black;"&gt;&lt;li class="li1"&gt; &lt;br /&gt;
&lt;div class="de1"&gt;$.frameReady(function(){&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;/li&gt;
&lt;li class="li2"&gt; &lt;br /&gt;
&lt;div class="de2"&gt;&amp;nbsp; $("I am a div element").prependTo("body");&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;/li&gt;
&lt;li class="li1"&gt; &lt;br /&gt;
&lt;div class="de1"&gt;}, "top.mainFrame",&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;/li&gt;
&lt;li class="li2"&gt; &lt;br /&gt;
&lt;div class="de2"&gt;{ load: [&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;/li&gt;
&lt;li class="li1"&gt; &lt;br /&gt;
&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {type:"script", id:"_fr", src:"/js/myscript.js", test:"myFunction"},&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;/li&gt;
&lt;li class="li2"&gt; &lt;br /&gt;
&lt;div class="de2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {type:"stylesheet", id:"_ss", src:"mycss.css"}&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;/li&gt;
&lt;li class="li1"&gt; &lt;br /&gt;
&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ] }&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;/li&gt;
&lt;li class="li2"&gt; &lt;br /&gt;
&lt;div class="de2"&gt;);&lt;br /&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;An example to execute the function in the top.mainFrame context automatically including jQuery. This script also loads a javascript file and a css file.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-8512492318001879992?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://ideamill.synaptrixgroup.com/?p=6" title="jQuery IFrame Plugin" /><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/8512492318001879992/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=8512492318001879992" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/8512492318001879992?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/8512492318001879992?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2009/10/jquery-iframe-plugin.html" title="jQuery IFrame Plugin" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DUYDRnY6eCp7ImA9WxNWEEo.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-3795125750308174063</id><published>2009-10-12T11:26:00.000+02:00</published><updated>2009-10-09T10:32:57.810+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-09T10:32:57.810+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="JQuery" /><title>JSON parse</title><content type="html">&lt;a href="http://code.google.com/p/jquery-json/"&gt;JQuery JSON&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-3795125750308174063?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/3795125750308174063/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=3795125750308174063" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/3795125750308174063?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/3795125750308174063?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2009/10/json-parse.html" title="JSON parse" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CUAGQXw5cSp7ImA9WxNWEEU.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-7957789975317761087</id><published>2009-10-09T12:22:00.000+02:00</published><updated>2009-10-09T12:22:00.229+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-09T12:22:00.229+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="asp.net 2.0" /><title>Web Parts</title><content type="html">Prima che la febbre di '&lt;strong&gt;AJAX&lt;/strong&gt;' contagiasse il mondo web un'altra piccola rivoluzione aveva visto il susseguirsi di restyling di home-page e di lanci di nuovi servizi. Stiamo parlando delle 'parti mobili', gli elementi di una pagina che possono essere inseriti, tolti, minimizzati e/o spostati a piacimento. Le società, e di conseguenza i siti web, che più di altre si sono avvantaggiate di tale tecnologia sono stati senza dubbio le tre big dei motori di ricerca: Yahoo, Microsoft ed infine Google &lt;a href="http://aspnet.html.it/articoli/leggi/1308/web-parts/"&gt;...&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-7957789975317761087?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://aspnet.html.it/articoli/leggi/1308/web-parts/" title="Web Parts" /><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/7957789975317761087/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=7957789975317761087" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/7957789975317761087?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/7957789975317761087?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2009/10/web-parts.html" title="Web Parts" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DkIHRn04eyp7ImA9WxNXGE4.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-181804673928570862</id><published>2009-10-05T11:24:00.004+02:00</published><updated>2009-10-06T15:08:57.333+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-06T15:08:57.333+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="JQuery" /><title>Block user interface</title><content type="html">The use of a transparent DIV is common in the Web 2.0&amp;nbsp; &lt;span id="goog_1254726586012"&gt;&lt;/span&gt;&lt;a href="http://malsup.com/jquery/block/"&gt;jQuery Bl&lt;span id="goog_1254726586015"&gt;&lt;/span&gt;&lt;span id="goog_1254726586016"&gt;&lt;/span&gt;ock UI&lt;/a&gt;&lt;span id="goog_1254726586013"&gt;&lt;/span&gt; is a jQuery Plugin that help us with it.&lt;br /&gt;
It's easy to easy, to block all the page we can put this code:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;pre style="background-color: #f9cb9c; color: black;"&gt;&lt;code class="mix"&gt;$.blockUI();&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
and this one to remove the block:&lt;br /&gt;
&lt;pre style="background-color: #f9cb9c;"&gt;&lt;code class="mix"&gt;$.unblockUI();&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;div style="font-family: inherit;"&gt;If we like to block/unblock all jQuery ajax request:&lt;br /&gt;
&lt;/div&gt;&lt;pre style="background-color: #f9cb9c;"&gt;&lt;code class="mix"&gt;$().ajaxStart($.blockUI).ajaxStop($.unblockUI);&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code class="mix"&gt;&amp;nbsp;&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style="font-family: inherit;"&gt;To block&lt;/span&gt;&lt;code class="mix"&gt; a specific element in the page, select it:&amp;nbsp;&lt;/code&gt;&lt;/pre&gt;&lt;pre style="background-color: #f9cb9c;"&gt;&lt;code class="mix"&gt;$('div.test').block();&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://malsup.com/jquery/block/"&gt;jQuery Block UI&lt;/a&gt; allows has to change the message, the color, the fadein/out effect, to open a modal dialog, the overlay color, the CSS etc. &lt;br /&gt;
&lt;br /&gt;
Personally I like to use with the events &lt;a href="http://www.asp.net/ajax/documentation/live/ClientReference/Sys.WebForms/PageRequestManagerClass/PageRequestManagerBeginRequestEvent.aspx"&gt;beginRequest Event&lt;/a&gt; and &lt;a href="http://www.asp.net/ajax/documentation/live/ClientReference/Sys.WebForms/PageRequestManagerClass/PageRequestManagerEndRequestEvent.aspx"&gt;endRequest Event&lt;/a&gt; of Asp.net Ajax.&lt;br /&gt;
&lt;br /&gt;
P.S. it doesn't work well with a pages including IFRAME.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-181804673928570862?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/181804673928570862/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=181804673928570862" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/181804673928570862?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/181804673928570862?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2009/10/block-user-interface.html" title="Block user interface" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DkIFQn4_fyp7ImA9WxNXGE4.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-3616009185967170897</id><published>2009-10-04T10:55:00.003+02:00</published><updated>2009-10-06T15:08:33.047+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-06T15:08:33.047+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="JQuery" /><title>Print a web page</title><content type="html">Print a web page take often a lot of time.&lt;br /&gt;
The simple Print action isn't so good when your page is rich of images and style effects.&lt;br /&gt;
&lt;br /&gt;
To accomplish this common problem the W3C included in the CSS declaration the MEDIA option PRINT&lt;br /&gt;
&lt;br /&gt;
&lt;div style="background-color: #f9cb9c;"&gt;&amp;lt; link href="print.css" media="print" rel="stylesheet" type="text/css"&amp;gt;&amp;lt; /link&amp;gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
but this force you to write a different CSS for everypage you would print.&lt;br /&gt;
&lt;br /&gt;
There is an easy way using &lt;a href="http://jquery.com/"&gt;JQuery &lt;/a&gt;and this &lt;a href="http://www.bennadel.com/blog/1591-Ask-Ben-Print-Part-Of-A-Web-Page-With-jQuery.htm"&gt;Print Plugin&lt;/a&gt;, by Ben Nadel.&lt;br /&gt;
The idea is to create a new DIV with a title and the DOM object that include what you choose to print!&lt;br /&gt;
&lt;br /&gt;
To see in action just include the JQuery framework, the plugin, select a DOM object and call ".print()" action after a click (or whatever you like)!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-3616009185967170897?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/3616009185967170897/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=3616009185967170897" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/3616009185967170897?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/3616009185967170897?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2009/10/print-web-page.html" title="Print a web page" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CEAGQXs7fCp7ImA9WxNXFUg.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-2348845486561570091</id><published>2009-10-03T08:52:00.018+02:00</published><updated>2009-10-03T08:52:00.504+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-03T08:52:00.504+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="security" /><title>Microsoft Security Essentials</title><content type="html">&lt;a href="http://www.microsoft.com/security_essentials/support.aspx?mkt=en-us&amp;amp;s=1#mainNav"&gt;Security Essentials&lt;/a&gt; è il nuovo prodotto Microsoft dedicato alla sicurezza di Windows. &lt;br /&gt;
La sua funzione è quella di fornire un primo strato di sicurezza da malware e virus.&lt;br /&gt;
&lt;br /&gt;
Dall'interfaccia scarna, si presenta con opzioni semplici e chiare. L'impatto sul sistema è quasi nullo.&lt;br /&gt;
I test effettuati da &lt;a href="http://www.virusbtn.com/news/2008/09_02"&gt;Av-test&lt;/a&gt; lo qualificano come reale alternativa ai più gettonati antivirus gratuiti e non.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_K9b1YLUHFG8/SsMH28yjU4I/AAAAAAAAAxU/xUN93bKgZ28/s1600-h/SecurityEssentials.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_K9b1YLUHFG8/SsMH28yjU4I/AAAAAAAAAxU/xUN93bKgZ28/s400/SecurityEssentials.png" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;L'installazione richiede pochi minuti e disattiva Microsoft Defender qualora presente sul sistema. Da notare che a differenza di quest'ultimo l'invio seppur minimo ed anomino di dati a SpyNet non è possibile. &lt;br /&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-2348845486561570091?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.microsoft.com/Security_essentials/" title="Microsoft Security Essentials" /><link rel="enclosure" type="" href="http://www.virusbtn.com/news/2008/09_02" length="0" /><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/2348845486561570091/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=2348845486561570091" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/2348845486561570091?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/2348845486561570091?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2009/10/microsoft-security-essentials.html" title="Microsoft Security Essentials" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_K9b1YLUHFG8/SsMH28yjU4I/AAAAAAAAAxU/xUN93bKgZ28/s72-c/SecurityEssentials.png" height="72" width="72" /><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;C0ECQXo4eCp7ImA9WxNXFEo.&quot;"><id>tag:blogger.com,1999:blog-28292230.post-7034277360560796725</id><published>2009-10-02T10:21:00.000+02:00</published><updated>2009-10-02T10:21:00.430+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-02T10:21:00.430+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="asp.net 2.0" /><title>Masters Pages &amp; Theme</title><content type="html">Chiunque si sia imbattuto per la prima volta con del codice &lt;strong&gt;ASPX&lt;/strong&gt; presente nella parte '&lt;strong&gt;body&lt;/strong&gt;' di una pagina web saràrimasto stupito del cambiamento radicale che la Microsoft ha apportato al buon vecchio ASP. Le cose si complicano al primo tentativo di personalizzare graficamente un intero sito web. I problemi che sorgono sono di norma due: il primo che non è possibile associare un foglio di stile che vada bene per tutti gli elementi della pagina, essendo essi divisi tra elementi HTML e '&lt;strong&gt;WebControl&lt;/strong&gt;' ASP.NET, ed il secondo che il passaggio dal lavoro grafico a pagine web deve essere fatto, almeno la parte finale, da un programmatore. A peggiorare il tutto ci pensa il mix tra tag ASP.NET e HTML che non permettono ad un web designer di intervenire in maniera sicura su una pagina già montata &lt;a href="http://aspnet.html.it/articoli/leggi/1307/masters-pages-theme/1/"&gt;...&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28292230-7034277360560796725?l=maurobennici.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://aspnet.html.it/articoli/leggi/1307/masters-pages-theme/1/" title="Masters Pages &amp; Theme" /><link rel="replies" type="application/atom+xml" href="http://maurobennici.blogspot.com/feeds/7034277360560796725/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=28292230&amp;postID=7034277360560796725" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/7034277360560796725?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/28292230/posts/default/7034277360560796725?v=2" /><link rel="alternate" type="text/html" href="http://maurobennici.blogspot.com/2009/10/masters-pages-theme.html" title="Masters Pages &amp; Theme" /><author><name>Mauro Bennici</name><uri>https://profiles.google.com/113330495894194733534</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-FwGIqQRa2ag/AAAAAAAAAAI/AAAAAAAAAAA/RrxnJgvPrIA/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry></feed>

