DCSIMG

 Subscribe in a reader

April 2007 - Posts - Guy kolbis

April 2007 - Posts

The Technology Specialist (TS) Exam 70-510: TS: Visual Studio 2005 Team Foundation Server was released in April 2007.

You can find more details here.

Good luck!

kolbis כתב בתאריך Sunday, April 29, 2007 1:37 PM
תגים:,

Radview, a small company, has just declared that they adopted an open source approach!

The software comes in two versions, the standard and the professional. For the professional that is targeted big organizations, you will have to pay :( because the open source is not good enough.

The product includes support for HTTP/S, WAP, AJAX, ActiveX, Java, Web services and more.

You can find the key features list here.

You can download it here.

In the following week I will examine the tool and publish my conclusions and recommendations, so stay tune :)

On a project that I lead, I had to supply with an installation exe. The project is an ASP.NET with Win Services and SQL2005 as the back-end storage.

So, part of the installation is the database. I had two options to create the database in the installation process:

  • Use a *.bak file.
  • Use SQL scripts.

The good thing about scripts is the fact that you can automate it within SQL Server; however the automation does not include the data. In order to add data I must write a SQL script with insert statements. Unfortunately, I had a LOT of data to insert, so I decided to go with the database backup, AKA *.bak file.

Recently I ran into a nice SQL Server Add-In that does just it. You can script all the data in a given table into insert statements and save it as a SQL script.

This is exactly what I have been looking for :-)

You can find the Add-In here.

Sealed is pretty powerful modifier in .Net. However I don't think that everyone understands the true essence of it. I want to emphasize the meaning of the sealed modifier.
The sealed modifier can be applied to classes, instance methods and properties.
The sealed modifier in a class declaration is used to prevent inheritance of the class:

sealed class SealedClass

   public int x; 
   public int y;
}


A sealed method overrides a method in a base class, but itself cannot be overridden further in any derived class.

The main purpose of a sealed class to take away the inheritance feature from the user. Here are some other points to think about:
If the sealed class is inheriting another class, using the sealed
keyword either in the method or class declaration make the CLR convert all
calls from virtual to normal method calls, because the runtime knows that
this method and can't be overridden. This can improve performance.
If the class has only static fields and properties, it doesn't make
sense to inherit the class. So the class designer can choose to seal his
class to avoid confusion.

Recently I visited Toronto for Beta release of software I designed. As always with Beta versions, we encountered several problems. The One I want to share with you is related to the CAS and Sandboxed applications.
We had an executable located in a shared location on the intranet. An application tried executing it from the local computer....and BOWWWW. We got permission exception flying everywhere.
So, after reviewing it for a while and googling it, here is what I came up with.
I had to use the caspol to grant the executable permissions on the client computer.
The problem was that I did not want any user to have to deal with setting up CAS policy properly to get the executable to run.
Here is what i found about it (http://blogs.msdn.com/shawnfa/archive/2006/07/13/664789.aspx):

"Every once in a while someone will ask how they can do something similar to these caspol commands from within their application. Generally, they want their application to be deployed from the Internet or a file share and don’t want users to have to deal with setting up CAS policy properly to get the application to run.
The answer of course is that you can’t do this … if an application were allowed to add code groups to policy without user interaction in order to elevate their privileges then every malicious application out there would go ahead and grant themselves full access to everybody’s machine; effectively rendering CAS useless as a protection mechanism.
Instead, you’ll need to have the end user make a trust decision for you. In v1.x this was difficult, you generally had to deploy a policy MSI for the user to run or give them a set of caspol commands. With v2.0 of the CLR, we’ve made things a lot easier via ClickOnce applications. You can use ClickOnce to request any permission that your application needs to run effectively – if these permissions would elevate the application above what it would normally get, and then the user is prompted to make a trust decision.
This way your app can elevate to whatever permission level it needs, and you don’t have to worry about pushing out confusing CAS policy changes to everyone who wants to run it."

This is a question I heard in the last ALM user group, where I talked about Team For Tester:

 

"Is it possible to read performance counters in a non Microsoft platform, such as UNIX, at the load test level?"

 

So, here is what we need to know about it. In the current version, in order to collect performance counters from non windows platform such as UNIX, we must write a process that runs in windows and converts the UNIX counters into windows performance counters.

The good news however is that on the next release Microsoft will open up the controller (which is in charge for collecting the performance counters) to allow non-perfmon results in the load test.

Great news! The Fiddler Debugging proxy has released a new version.

Unlike version 1.x, Fiddler2 supports viewing and tampering with HTTPS traffic.  It also includes better support for saving to Visual Studio WebTest files.

You can download it here.

The Browser Recorder resides on the HTTP layer. That means that is should act just like a sniffer, for example the Fiddler. However this is not the case. Fiddler can capture AJAX calls while the recorder cannot. Why?

Well, the browser recorder listens for HTTP events raise by IE. The problem is that IE does not raise events for AJAX. The good news is that in the next release of Orcas (the march CTP) there is a fix. Microsoft has added a lower level recorder that intercepts AJAX calls.