Custom tool warning cannot import wsdl:portType

I chased this bug for a while - more and more frustrated… This was what happened: I updated a WCF Service Reference and got this error (or actually warning) in the Error List of Visual Studio. Also I saw that the Reference.vb was totally empty.

OK - after some trying of my own (why do I do that over and over? Don’t think - steal from others…) I though of searching the Net and of course found the answer in five seconds.

Here is a guy that solved it - but the header and description of the post is quite different so I’ll try to give my own explanation here.

In the Configure Service Reference… dialog box there is an option “Reuse types in referenced assemblies”. Exactly what that means is hard to grasp (<a href=”http://www.google.com/search?hl=en&q=” data-reuse+types+in+referenced+assemblies”&meta=” target=” data-_blank”=”“>just try for yourselves</a>) - but I understand it as...

Read More

WCF with handcrafted WSDL generated no FaultExceptions

This is problem that has haunted us for the good part of the autumn and winter;

early on in our design process we chose to create the WSDL for our services by hand. This decision mainly had to do with that you can express stuff in XSD that WCF-attributes doesn’t support, such as string length etc.

Also we were using the ErrorHandlerAttribute found in the excellent book “Programming WCF Services” by Juwal Löwy.

What we saw was that even though we had created the wsdl for handling the fault and their details correct, we didn’t get the details over to the client (that is the T of FaultException<T>). We checked the wsdl and the generated client proxy (and it’s wsdl) file over and over, and line by line but just couldn’t find it.

And finally it dawned on us… It was Mr Löwy’s fault...

Read More

2008 - another great year

To sum up 2008 is not very hard for me - it starts and ends with Abbe (Albert). He was almost a part of our lives at the start of 2008 since he took up considerable space in Elin’s belly. :)

He went from:

Abbe 1 day

to:

Same Abbe - 11 months

In work I don’t think I ever learned so much in one year (TFS, SOA, MSBuild, WCF, Oracle just to mention a few things I have touched during the year). But it come to a cost - where I also lost my ability to leave work at work when I go home. I’ll try to improve that next year - which won’t be hard since I will...

Read More

About this blog

Lately I have been asked the question why I have this blog, several times actually. I honestly thought that I wrote that in the first posting I did, but it was very short. Not even when I change into www.marcusoft.net I wrote something about it.

But the reason for the blog is, and has always been this simple: I write about things that interest me and when they catches my attention. For several years I did notes in diffrent kind of notebooks at different customers. Always forgot them when I left. So now I have them in one place. I often link to the blog for solutions to problems I have and solve.

I then and then write about private stuff also, in the same manner - when it feels good.

I write in english to keep my english up to date.

So there you have -...

Read More

Compress a string with zip

[UPDATE START]

We found a nasty performance bug in the code below. The DeCompress-method copies a string for each turn in the loop. That is a classic problem that creates a new copy of the string for each row. That became a major problem for a 3.8 Mb string…

I have now updated the code to use the System.Text.StringBuilder object instead. That took down the speed to about a tenth. Sorry that I didn’t catch that…

[UPDATED STOP]

We had a quite special need the other day; we wanted to compress a part of our request, namely a XML-string that was sent to us.

Most of the examples I found on the net showed how to compress the content of a file. But here is the code that compress a string. The code uses ICSharpCode.SharpZipLib. Here you go:

/// <summary> /// Compress strings with ICSharpCode.SharpZipLib /// </summary>...

Read More

UTA058 The test engine cannot run tests in the assembly for out integration test

We have a done a MsTest-dll that contain our integration tests that is run after each deploy to our daily build environment.

However on our new build server we ran into problems with the following error message.

“UTA058: The test engine cannot run tests in the assembly”

OK - it seems that you need to configure .NET Framework to allow running assemblies from network shared.

I found this description on how to solve it (potentially the longest URL on the net ;).

But we ran into more trouble… The .NET Framework 2.0 Configuration was no where to be found. As it seems that tool disappears when the .NET Framework 2.0 SDK is installed. Where it disappeared to is a another question that I haven’t found an answer to.

However the great description also told us how to handle the problem on the command...

Read More

SOAP UI - a great way to do integration tests for services

Just found this tool - or actually I’ve used but missed it’s greatness…

The SoapUI can be used to automatically generate clients to access web services. But furthermore it can be used to test web services. With the tool you can generate test request and setup the expected response. This is setup via a nice GUI.

The requests and responses can then be run, in sequence or one by one.

What a great way to do integration tests for a service. Just imagine - you have 100 pre-built request/response-files and just run them (from the command prompt as part of you nightly build of course).

Since not much coding skills are required you can easily put the SoapUI  in the hands of a tester and maintain the requests/responses as checked in files.

Now we just need to find a way...

Read More