The days where AOP was limited to the academic samples of tracing and authorization are definitely over!

Szymon Pobiega has released PostSharp4ViewState on CodePlex. This PostSharp plug-in defines a new custom attribute [Persist]. When you apply it to an instance property of an ASP.NET page of control, it will simply... persist it in the state view!

Under the hood, PostSharp4ViewState implements the methods LoadControlState and SaveControlState.

For more information, please read the PostSharp4ViewState Code Project article. And don't forget to give him a good vote ;-).

Thank you Szymon for this great plug-in, and congratulations!

We have just doubled the amount of RAM available to the PostSharp server. Guess what is the server configuration? What do you think a Microsoft-centric open-source project runs on? Well... a Linux/Debian virtual server (Xen) running Apache, Mono, phpbb, wordpress, mantis and htdig! Daily backup using rsync. Try to have the same feature for less than 35 EUR a month on Windows! -gael

An untraditional aspect of the PostSharp activist Michal Dabrowski:

People who use NHibernate know that in order to take advantage of its lazy-loading facility, all public members of the persisted classes must be marked as virtual. Compared to all the benefits the lazy-loading brings, this seems to be a very insignificant price. However, for some people, including me, this extra virtual keyword is still some annoyance. It is very easy to forget about it when writing a new code, it makes Resharper complain sometimes ("virtual member call in constructor" warning) and it is ugly (subjective one, I know). In this article I would like to show how to solve these issues with a simple aspect, that makes members virtual even if the keyword is not used in the source code.

Read the complete article on Code Project.