Showing posts from May, 2009

WCF tuning tips

To obtain significantly better response time and decreased the load on the service, you apply a set of best practices depending on your needs.
1. If you do not need sessions in your services, you may want to disable them to reduce the memory consumption of the service.
2. If you are transfering large amounts of data between client and server, the minimum is to enable MTOM enconding. MTOM is an optimized encoding for transmitting binary data. And even better than MTOM, you can also use streaming for the data transfers. Streaming avoids loading the complete message in memory which is what happens when you do not use streaming. Performance will be vastly increased when dealing with large amounts of binary data.
3. If you have control over client and server, you may also want to choose a more efficient but less interoperable binding (like NetTcpBinding for example). This will avoid the overhead that comes with all the WS-* protocols.
4. Be carefull when modifying the instance and concurrency …

Databinding and XtraReport

I had a problem recently using object data sources in my XtraReports. I was assigning an object hierarchy to the DataSource property and was getting weird exceptions.
The problem is XtraReport does not handle well one object as a data source, it prefers to have a collection of objects.
The simple fix was to use a BindingSource as the data source and assign my object to the BindingSource's DataSource property. And yes, I should have been using a BindingSource from the start, I know :)

Some news about EF 4.0

The ADO.NET team posted a list of the upcoming features of Entity Framework 4.0. We will get automatic lazy-loading, POCO and much more. This is definitely something you want to read.
Click on the title to read the complete article.