My .NET Olai

Console.WriteLine("My experiences surrounding the .NET world in which I've been living since my graduation");


Just Another .NET Blog

MerryMan

Tuesday, April 03, 2007

Excluding vwd.webinfo from adding to VSS from VS 2005

When I have a ASP.NET WebSite (NOT WebApplication), I notice the presense of vwd.webinfo in my VS 2005 solution. The problem is the annoyance when it shows as a new source control item. (with a plus sign next to the filename). So, when ever I do a "Pending Checkins"/"Checkin", it is included as part of the pending items.

At the moment I am taking care to uncheck this file and then do the checkin.

But, it would be nice to have tell VSS to exclude this file (or set of files) from trying to add to VSS.

I've also thought about "exclude from this project" option in Solution Explorer within VS 2005, but then it adds a file called vwd.webinfo.exclude and then this shows up in pending checkins once again.

Using the VSS client, there is a facility to include FileTypes. To my surprise, the *.webinfo was not included but still the VS 2005's VSS plug-in tries to add it.

I've never managed to get an solution to this problem yet. Hopefully something might turn out at a later time.

Saturday, May 20, 2006

Learning to Program the Ruby way

Well, it should not to be mentioned under this blogspace. Nevertheless, for the fun sake of it, I started to learn computer programming (now that it's been nearly 8 years since I wrote my first proper computer program using C ). A friend of mine introduced me to a book he was having as a gift to his dad (who is starting to program). This book is titled 'Learn to Program' and it should be sufficient to say that it belongs to the 'Pragmatic Series' from the Pragmatic Programmers.

The book is amazingly interactive. I laughed and smiled while learning to program using this book. The author has done a commendable job in writing this book in such an lucid manner.

And what can I tell about Ruby? From One-Click Download and Installation upto using the SciTE editor, everything was simple and neat. Not a single problem. The language is also very very light in appearance and does a good job. I am loving it every day. Looks like after a long time, the need for learning a language for fun has really brought some fruit. Ruby is fun. No doubt! I don't have current plans to use it for my projects. But, I may consider it to create website using the Ruby On Rails MVC Web Framework.

Tuesday, August 16, 2005

ASP.NET 2.0 and the blog influence

Never before have I come across such a phenomenon, wherein there seems to be more work or proof of concepts being done in ASP.NET 2.0 than in ASP.NET 1.x

It looks like the Microsoft's entire .NET team is now being driven by the bloggers. Now a days it needs to be specified the version of the .NET to google for technical articles. More articles come up with .NET 2.0 than for .NET 1.x

I slowly get the feeling of how an open source programmer feels when he knows about something internal happening in the produce he is using. Now a days there is so much more information about the intrinsics of .NET than before. Great going and I feel sad that I have yet to sail the .NET 2.0 wave although I've been continously having sun bath in the beaches of Whidbey!

Tuesday, February 01, 2005

From VSS to CVS; From CVS to SVN

Hmm.....After VSS came CVS and now after CVS it's time to try out SVN!

Yesterday, I was finally determined to make my machine a build system(with WinXP SP2 Pro) for which I had to install and configure CruiseControl.NET. For which I had to install VSS. Then I thought of CVS (because, I was comfortable with CVS way of doing things for the past 1 year). Oh...then I thought of SVN (because, SVN is to be a compelling replacement for CVS).

The best part of SVN is the availability of the free e-book which is quite exhaustive. I was indeed more happy to read the TortoiseSVN e-book because it gave detailed steps to install the SVN Server and not just the TortoiseSVN Client.

Since I did not have Apache Web Server in my system, I prefered the SVNServe type of SVN Server which listens on port 3690. With that I had my svn server setup but before running the server, I read a piece of information in the book which said that the svnserve.exe can be run as a windows service using a wrapper called SVNService. Without much thought, I tried running the svnserve as windows service.

But, to my despair when I tried to view the repository which I had just created using TortoiseSVN, I could not find the repository using the repo-browser of TortoiseSVN. Something has gone wrong somewhere....After 30 minutes, I started to suspect the SVNService wrapper. So, instead of going to that level of abstraction, I decided to run the svnserve manually using command prompt. And lo there was Windows XP SP2 in action asking my permission to unblock the port 3690. Phew! that was a relief. After unblocking it, I reverted back to SVNService.

There ended my initial adventure with SVN which was quite less exciting than my earlier ones with CVS and TortoiseCVS. I am expecting the real thrill when I start using ASP.NET application with SVN.

Tuesday, January 25, 2005

A Virtual Day with Virtual PC 2004

Today was a day dedicated to Virtual PC 2004.

My colleague (infact classmate) Ankur was the first one to have installed Virtual PC 2004 and have it up and running. His setup was quite surprising. He was able to install Virtual PC 2004 on a Windows XP Home edition. His one and only GUEST machine was Windows Server 2003. Infact, Virtual PC 2004 does not officially support this setup. Ankur's need was quite different than mine. Since he had a laptop and a desktop computer he could afford for that kind of setup wherein he would be using the Windows Server 2003 for SQL Server 2000 and Source Control.

Since I don't have the comfort of having a separate physical server, I wanted to install Windows Server 2003 as my GUEST machine with the HOST being a Windows XP Professional. The idea was to create a Virtual Network with the HOST and GUEST being the only nodes in the network. The excellent help provided by Virtual PC 2004 was useful only to get started.

I had to first install the new network adapter(Microsoft Loopback Adapter) using Add Hardware Wizard on my HOST machine and provide the HOST with a static IP address (192.168.1.1) for the connection associated with LoopBack Adapter. The similar proceedure was followed in my GUEST machine with the IP address being 192.168.1.2. I also changed the number of network adapters for the GUEST machine in the Virtual PC Console to include the Microsoft Loopback Adapter.

I restarted my GUEST machine and expected my HOST to detect the GUEST.
That looked like a distant future for me. Basically I could not get it to work.


On googling, I found a link to a Virtual PC guy's blog which explains a subtle problem. A chicken and egg kind of problem is what he says. Oh...and here is the actual Virtual PC guy's blog. Now then I had to realize it will take quite more strain to make this thing work or conclude that it will NOT work. At this point I give up for the day and go to reality by taking a nap and iterating on this stuff tomorrow........

LINKS:

  1. A-Z on Virtual PC
  2. Virtual Server
  3. TechNet Virtual Server Technical Briefing in Edinburgh

Wednesday, October 27, 2004

My first experiments with NUnit and NAnt!

Finally I got a chance to use these tools (NAnt and NUnit)

The first to be used was NUnit 2.2 and had problems using it because I don't have permissions to install any assemblies into the .NET 1.1 Global Assembly Cache. So, I had to obtain the source and did the manual installation of copying all the required assemblies into a single folder. Then I set up the Path Environment variable to include path where these assemblies were put.

After doing this I went cruising my way creating cool unit tests for my own library under construction. It all worked fine and I used the NUnit-GUI to test my applications.

Then came the second half of the fun! I had to now use the NAnt build tool. So, went ahead and downloaded the binaries for NAnt. As done earlier, set up the environment variable path. I was lazy and tried to use the build of my VS.NET projects using the task. Boom! A enormous list of errors and exception finally thrown at me by the NAnt utility. Now, I did not want to use the task and went ahead to create my own directory structure (deciding where each output should go into and also keeping in mind the NUnit tests to be run automatically by NAnt) and corresponding task in my build.xml file.

The most frustrating or shameful mistake I did was to forget the fact that xml tagging is case sensitive. So, all I was getting was errors reporting FileNotFound. Spent nearly 2 hours in wain untill I was forced to get reminded of this fact that xml tagging is case sensitive!

And that is not the end of it! When tried to use the task got the exception that NAnt could not find the nunit.framework.dll assembly (as expected, because i have not installed the NUnit assemblies into the GAC and that is because I DON'T HAVE PERMISSIONS). Then I went on with the task to execute the “nunit-console.exe”. Now the whole fun started :) Again the problem of nunit.core and nunit.framework assemblies not found problem.

The problem was that I did not bother about nunit.core and nunit.framework assemblies when using the nunit-gui because they were in the same folder as that of nunit-gui.exe. But, now when I run nunit-console, the present working directory will be the location where the build file is present and thus nunit-console cannot find the nunit.core and nunit.framework assemblies.

So, the only solution left for me was to copy the nunit.core and nunit.framework assemblies from the installed folder (the path is hard coded in the build file; I do not like to do that) to the present working directory. That solved the main problem. But I really failed in transforming the TestResult.xml produced automatically by NUnit-console to a proper html output using the “Summary.xslt”. Too much to handle for a single day may be.. So I am giving up on that and am contended with the error output files.

The immediate task facing me now is to use the al.exe for linking the modules just compiled using NAnt's build process into a single assembly and placing in the GAC. But hold on, I do not have permissions to install an assembly into the GAC! Instead, I have the SSCLI's GAC. hmmm, that would take more time I guess.

I just wish some kind of USER Specific GAC is provided in .NET! (or may be permissions can be granted to install the assemblies generated and strongly named by the CURRENT USER into the GAC). Got to look into .NET Operation documentation for all these stuff!
Ok. Now time to shift to Rotor and leave .NET for a while! Phew!

Sunday, October 24, 2004

Back to formal education

Oh...it is a awesome feeling to go back to school to study.

I am now enjoying what I had been waiting for nearly 1 year. I am devoting my full time to books and that too on .NET books which makes me feel good.

But, it is not easy to go back to full time study after working in the industry. The contrast is in the case of university, we tend to be very consious about what we are learning. In the industry the learning process is overall and not in depth. So, learning during working is remembered more than the learning at university. I could realize this during my first week of my classes in The University of Hull where I am in the .NET MSc in Distributed Systems Development course. I came to know about this course through a blog post which i am not managing to trace back. And now, I am just doing the kind of stuff I've wanting to do in the past. Some cool low level compiler stuff upto using xml web services.

I have realized that tackling the university learning like the learning while working has lot more advantages. So, I spend a lot of time in the lab and learn the concepts using the text books. The two indespensible books that I carry with me include the famous jeffrey richter's “Applied Microsoft .NET Framework Programming” and Simon Robinson's “Advanced .NET Programming”. The books I am supposed to read include

This way of learning is quite different from how I used to learn in my B.E course back in Bangalore. It is just recognizing the fact that learning the way I used to learn in the college does no good in work and I should not go back to that again just because I am now in formal education.

And all this fits into the system of education here in UK. Here, more importance is given to learning the theory by practice which is the way I am comfortable.

So currently cruising my way developing the solution for a problem (given as an assessment) using the Test Driven Development (NUnit 2.2)... I've had a head start in Test Driven Approach for developing applications in my previous workplace.