Solving strange errors when updating more items in hooks

Sometimes when you’re updating item in hooks, you’ll receive strange error messages in the client. The reason for this is quite clear. Sitecore has an event system divided in 2 parts: the regular events such as item:created. The other one is the NotificationContext. This particular class is used by the Sitecore client to get notified before time intensive actions such as event broadcasting is done.
You can use this functionality as well by simply subscribing to the delegates in Sitecore.Context.Notifications.

But what if you’re updating or manipulating your repository triggered by a client action? Exactly, the client has subscribed to a specific action, but when the event will be triggered, a collection has changed or a DataContext is missing. The solution is easy: use Sitecore.Data.BulkUpdataContext in a using statement:

using(new Sitecore.Data.BulkUpdate())

{

//Your update code

}

Nobody gets notified, but important events(configured in the web.config/include files) will get triggered.

Have fun coding!

The world is changing…

You can feel it everywhere! Lord of the Rings starts with these sentences.
So does my new project. I’m not going to reveal anything. But some parts might be interesting for you. On January 1st 2009, I’ll start of with a new website. This website is rather a project then just a single website. It all has to do with Web 2.0, Social Networking, but also Sitecore. It’s all about experiencing what goes around on the web these days. And how to take advantage of it.

On technical side: I’m developing a close integration of Sitecore with all kinds of social networks / web 2.0 services. When I’m talking about close, we’re talking this time about tight! Using Sitecore as data aggregator in several ways. But also a web 2.0  portal and main distribution channel.

Expect my sources to be published on our shared source repository somewhere February. When everything is stable.

More info upcoming later this week.

Show Sitecore how to improve…

Sitecore is alive and kicking. A lot is happening internally on product development. New modules and integrations with technology partners get released at the same speed as Bugatti Veyrons get sold ;). In new (even emerging) markets such as Australia, South Africa, Israel, Asia and New Zealand, Sitecore becomes the standard for Web Marketing.
Yeah that’s right: Web Marketing. More then ever Sitecore becomes a tool for the Marketers. Once again: yes, just the tool. IT grows up, we are more then often just the tool to reach goals. Information goals, conversion goals and even more physical commercial goals such as direct sale.

All of this doesn’t mean that Sitecore forgets where we came from. Very often Lars Fløe Nielsen and I have talks about the incredible number of developers who work with Sitecore, other Sitecore technical numbers like our implementations but also namespaces, classes and methods in our product(s). Both Lars and I are very proud when we look at Sitecore as a company. Almost 50% of our colleagues are involved in Product development. When I’m talking about involved, this doesn’t mean that they contribute code to the repository, but rather talk on a daily base about product directions. We supply our feedback, feeded by our outstanding power team of partners and customers, in a well formed way to product development. In this way there’s no way for them to find excuses for such another outstanding improvement in the product. We provide the exact reason, the pain and possible solution. Together with the right business case supplied by you out there, we’re able to remain world leading in innovative content management :).

This morning in the train I’ve been thinking how to address some of the issues of our developer customer around the world. The guys who are writing and rewriting code on a daily base. A lot of you have made us famous inside your company. So we should listen to you guys as well. Like I said, we try to do this always, but sometimes, it’s good to trigger people. So please! go ahead, react on this post. Tell us what we should do better, what we should different, what’s working what not. I’m particular interested in what makes your process less time intensive and more efficient.
Should we come up with a Visio shape for designing your data? Or should we deliver you a templated WebControl for our advanced types? Is a part undocumented what should be documented? Please let me know.
But please note one thing: I’m looking for feedback, not for a flame war. This is my first try to do this. Hopefully we can start a dialogue more often.

So please go ahead!

CM Innovation in Belgium

This Thursday, Christian Daems is showing the world of Content Management and Internet Innovation in Bruxelles, Belgium. A real cool event.

Sitecore is one of the biggest sponsors of this event. I’ll be there together with some of my Danish colleagues and a handful of partners. Please drop by our boot when you want to get to know more about Sitecore. Or in case you want to share some thoughts with me.

Lars Nielsen, one of our Vice Presidents, is opening this event as a keynote speaker.

Hope to see you there!