Sri Lanka .NET 
                Forum Member

Monday, October 30, 2006

Compare ASP.NET 1.x and ASP.NET 2.0

While I was reading some articles regarding asp.net I found an article that compares asp.net versions. I think that this article will be useful to asp.net developers.

Read the article

Microsoft TECHED 2006 Sri Lanka


Microsoft TECHED 2006 Sri Lanka was held at Waters Edge Battaramulla on 25th – 27th of October. This was the second time that the TECHED was held in Sri Lanka.

I attended TECHED this time it was a great experience to me as I am a developer. There were 4 tracks that we could attend and I attended for the developer track sessions.

Track 1: Windows Infrastructure and System Management
Track 2: Messaging and Collaboration
Track 3: Enterprise Data Management, Architecture and Team Development
Track 4: Developer Technology

Day 1:

The one started with some keynotes from Microsoft and there were around 650 participants. The entire participant got the final program and a card with bar code from the counters.

After having lunch the first session of the developers track started around 1pm and my self and few of my friends attended to that session. After finishing that session my self and my friend Jagath went to the .NET Forum & MVPs stall and in that stall I met Razor and he surprised me by saying that I have won a gift from the .NET Forum. I was really happy that I won a gift from .NET Forum.

The forum gave gifts for the top ten participants of the forum and I was one of them. I got a t-shirt, a mouse pad calculator and some key tags as my gift. Thanks for .NET Forum selecting me as a good participant of the forum.

There were interesting sessions such as “WPF FOR DEVELOPERS”,”ASP.NET AND AJAX” which I attend was very useful for me. I learned lot of new things from these sessions.

All the sessions on day 1 ended around 5.15 pm and it was raining heavily at that time. One friend of mine gave me a lift and thanks for that friend.

Day 2:

Day 2 of the TECHED started around 8.45 am. This day there were 6 sessions scheduled and I attended to five of them. This day my self and my friends attended to some sessions in developer’s track and some in Enterprise data management track.

Some of the interesting sessions that I attended were “VS 2005 Data Binding”, ”Web Services in VS 2005”, “Improving Teamwork & Developer habits” ect…

Two of the sessions from the five sessions that I attend were done by Chad Hower (WHOO!!! HOO!!!) and those sessions were really cool and interesting and thanks for Chad for doing those presentations. Hope that next time when TEDHED happens in Sri Lanka that he will come to do some presentations.

The second day of the TECHED ended at 6.30pm.

Day 3:

The day 3 started around 9am in the morning there were six sessions arranged for the day and I attended 5 of them and today also changed tracks.

Chad Hower did 3 out of 5 sessions that I attended and those sessions were really interesting. Some of them are “SQL CLR”, ”Software Safety”.

All of the sessions ended around 6.15pm and we went to the counters and got our gift pack, which were a nice bag from Microsoft and a nice mug from Navantis. Thanks for Microsoft and Navantis for giving us this gift pack.

Then around 7.15pm the entertainment night and the dinner started and it was cool and I enjoyed it very much. There were a music band and a DJ to keep us entertained. Microsoft, Navantis, John Keels, and Suntel gave several gifts to the participants.

Microsoft gave some bags, t-shirts and Navantis gave a return air ticket from Malaysia and Suntel gave 2 CDMA phones and John Keels have some gift bags.

The party ended around 10.30pm on that day and my father came to pick up me from Waters Edge.

All together it was a grate experience for me and I learn lot of new technical things from TECHED this year. The food and tea was great and only the problem was that day-by-day the organizers changed the session schedule.

Finally I must thank Microsoft and .NET Forum for arranging this event for the second time in Sri Lanka and hope to attend next year’s TECHED as well.

Monday, October 23, 2006

Got through

Today I did exam 70-316 (Developing Windows Applications using .NET) at SLIIT Kollupitiya exam center.This is the second exam which I did on the way to get certified as MCSD.Three more exams to go.

The pass mark for this exam was 700/1000 and I scored 1000/1000.I am really happy about my results.

The exam started around 10am and I finished it around 11.10am.

I will do the next exam which is 70-320 as soon as possible and then I would be a MCAD.

Friday, October 13, 2006

Birthday Wishes

Yesterday was the birthday of my two twince brothers.Now they are 21 years old. Wish them a happy birthday and may there dreams become true.

Thursday, October 12, 2006

Beat stress, drink tea

University College London (UCL) says "Regular cups of tea can help speed recovery from stress".

Read More

Tuesday, October 10, 2006

Create Graphs

UDraw(Graph) is a free software which we can use to generate graphs.After creating a graph it creates a file call fileName.udg with a specific format.

Example Image :



Download Software

We can use a XML file to create above graph through C# code.

Sample XML File :



FlooringSaw
Flooring
Saw
FlooringDry
1
1/1/1900 12:00:00 AM


FlooringDry
Flooring
Dry
FlooringPlane
2
1/1/1900 12:00:00 AM


FlooringPlane
Flooring
Plane
FlooringSize
3
1/1/1900 12:00:00 AM


FlooringSize
Flooring
Size
FlooringAssemble
4
1/1/1900 12:00:00 AM


FlooringAssemble
Flooring
Assemble
FlooringFinish
5
1/1/1900 12:00:00 AM


FlooringFinish
Flooring
Finish
ROOT
6
1/1/1900 12:00:00 AM



Code to display the graph :

DataSet dsUDG = new DataSet();
dsUDG.ReadXml("Services.xml");

DataRow []servOprs = dsUDG.Tables["ServiceOperation"].Select("ServiceName = 'Flooring'");

StreamWriter sw = new StreamWriter("servOprs.udg");

sw.WriteLine("[l");

for(int i = 0;i < servOprs.Length;i++)
{
if(servOprs[i]["ParentServOprsID"].ToString() != "ROOT")
{
DataRow []temp = dsUDG.Tables["ServiceOperation"].Select("ServOprsID = '"+servOprs[i]["ParentServOprsID"].ToString()+"'");

if(i != 0)
{
sw.WriteLine("l("+va+"_"+servOprs[i]["OperationName"].ToString()+va+",n("+va+"node"+va+",[a("+va+"_GO"+va+","+va+"ellipse"+va+"),a("+va+"OBJECT"+va+","+va+servOprs[i]["OperationName"].ToString()+va+"),a("+va+"COLOR"+va+","+va+"lightred"+va+"),a("+va+"INFO"+va+","+va+va+")],");
}
else
{
sw.WriteLine("("+va+"_"+servOprs[i]["OperationName"].ToString()+va+",n("+va+"node"+va+",[a("+va+"_GO"+va+","+va+"ellipse"+va+"),a("+va+"OBJECT"+va+","+va+servOprs[i]["OperationName"].ToString()+va+"),a("+va+"COLOR"+va+","+va+"lightred"+va+"),a("+va+"INFO"+va+","+va+va+")],");
}

if(temp.Length != 0)
{
sw.WriteLine("[l("+va+"@"+servOprs[i]["OperationName"].ToString()+va+",e("+va+"edge"+va+",[a("+va+"EDGEPATTERN"+va+","+va+"single;solid;1;0"+va+"),a("+va+"OBJECT"+va+","+va+va+"),a("+va+"FONTSTYLE"+va+","+va+"bold"+va+"),a("+va+"INFO"+va+","+va+va+")],");
}
}
else
{
sw.WriteLine("l("+va+"_"+servOprs[i]["OperationName"].ToString()+va+",n("+va+"node"+va+",[a("+va+"_GO"+va+","+va+"ellipse"+va+"),a("+va+"OBJECT"+va+","+va+servOprs[i]["OperationName"].ToString()+va+"),a("+va+"COLOR"+va+","+va+"lightblue"+va+"),a("+va+"INFO"+va+","+va+va+")],[]");
}
}

for(int k = 0;k < servOprs.Length-1;k++)
{
sw.WriteLine("))))]");
}

sw.WriteLine("))]");

sw.Close();

Monday, October 09, 2006

.NET Framework 3.0 Downloads

If you want to download .NET Framework 3.0 stuff please visit below site.

http://www.netfx3.com

Thursday, October 05, 2006

Generate Gantt Project 2.0.2 File

Gantt Project 2.0.2 is a open source project scheduling application written in Java and featuring gantt chart, resource management, calendaring, import/export (MS Project, HTML, PDF, spreadsheets).

Download Gantt Project

After creating a plan when you save it it saves the file as an XML file.There is a specific format to that file and we can generate that file through code using C#.NET.

Below is a sample code for the file generation.

XmlTextWriter tw = new XmlTextWriter("Plan.xml", System.Text.Encoding.UTF8);

tw.Formatting = Formatting.Indented;

tw.WriteStartDocument();

tw.WriteStartElement("project");
tw.WriteAttributeString("name","");
tw.WriteAttributeString("company","");
tw.WriteAttributeString("webLink","");
tw.WriteAttributeString("view-date","year-month-day");
tw.WriteAttributeString("view-index","0");
tw.WriteAttributeString("gantt-divider-location","316");
tw.WriteAttributeString("resource-divider-location","301");
tw.WriteAttributeString("version","2.0");

tw.WriteStartElement("view");
tw.WriteAttributeString("zooming-state","default:2");
tw.WriteEndElement();

tw.WriteStartElement("calendars");
tw.WriteStartElement("day-types");
tw.WriteStartElement("day-type");
tw.WriteAttributeString("id","0");
tw.WriteEndElement();

tw.WriteStartElement("day-type");
tw.WriteAttributeString("id","1");
tw.WriteEndElement();

tw.WriteStartElement("calendar");
tw.WriteAttributeString("id","1");
tw.WriteAttributeString("name","default");

tw.WriteStartElement("default-week");
tw.WriteAttributeString("sun","1");
tw.WriteAttributeString("mon","0");
tw.WriteAttributeString("tue","0");
tw.WriteAttributeString("wed","0");
tw.WriteAttributeString("thu","0");
tw.WriteAttributeString("fri","0");
tw.WriteAttributeString("sat","1");
tw.WriteEndElement();

tw.WriteStartElement("overriden-day-types");
tw.WriteEndElement();

tw.WriteStartElement("days");
tw.WriteEndElement();

tw.WriteEndElement(); // end calendar
tw.WriteEndElement(); // end day types
tw.WriteEndElement(); // end calendars

tw.WriteStartElement("description");
tw.WriteEndElement();

tw.WriteStartElement("tasks");
tw.WriteAttributeString("color","#8cb6ce");

tw.WriteStartElement("taskproperties");

tw.WriteStartElement("taskproperty");

tw.WriteAttributeString("id","tpd0");
tw.WriteAttributeString("name","type");
tw.WriteAttributeString("type","default");
tw.WriteAttributeString("valuetype","icon");

tw.WriteEndElement();

tw.WriteStartElement("taskproperty");

tw.WriteAttributeString("id","tpd1");
tw.WriteAttributeString("name","priority");
tw.WriteAttributeString("type","default");
tw.WriteAttributeString("valuetype","icon");

tw.WriteEndElement();

tw.WriteStartElement("taskproperty");

tw.WriteAttributeString("id","tpd2");
tw.WriteAttributeString("name","info");
tw.WriteAttributeString("type","default");
tw.WriteAttributeString("valuetype","icon");

tw.WriteEndElement();

tw.WriteStartElement("taskproperty");

tw.WriteAttributeString("id","tpd3");
tw.WriteAttributeString("name","name");
tw.WriteAttributeString("type","default");
tw.WriteAttributeString("valuetype","text");

tw.WriteEndElement();

tw.WriteStartElement("taskproperty");

tw.WriteAttributeString("id","tpd4");
tw.WriteAttributeString("name","begindate");
tw.WriteAttributeString("type","default");
tw.WriteAttributeString("valuetype","date");

tw.WriteEndElement();

tw.WriteStartElement("taskproperty");

tw.WriteAttributeString("id","tpd5");
tw.WriteAttributeString("name","enddate");
tw.WriteAttributeString("type","default");
tw.WriteAttributeString("valuetype","date");

tw.WriteEndElement();

tw.WriteStartElement("taskproperty");

tw.WriteAttributeString("id","tpd6");
tw.WriteAttributeString("name","duration");
tw.WriteAttributeString("type","default");
tw.WriteAttributeString("valuetype","int");

tw.WriteEndElement();

tw.WriteStartElement("taskproperty");

tw.WriteAttributeString("id","tpd7");
tw.WriteAttributeString("name","completion");
tw.WriteAttributeString("type","default");
tw.WriteAttributeString("valuetype","int");

tw.WriteEndElement();

tw.WriteStartElement("taskproperty");

tw.WriteAttributeString("id","tpd8");
tw.WriteAttributeString("name","coordinator");
tw.WriteAttributeString("type","default");
tw.WriteAttributeString("valuetype","text");

tw.WriteEndElement();

tw.WriteStartElement("taskproperty");

tw.WriteAttributeString("id","tpd9");
tw.WriteAttributeString("name","predecessors");
tw.WriteAttributeString("type","default");
tw.WriteAttributeString("valuetype","text");

tw.WriteEndElement();

tw.WriteEndElement();

tw.WriteStartElement("task");
tw.WriteAttributeString("id","13");
tw.WriteAttributeString("name","creating xml file");
tw.WriteAttributeString("shape","0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0");
tw.WriteAttributeString("meeting","false");
tw.WriteAttributeString("start","2005-11-04");
tw.WriteAttributeString("duration","1");
tw.WriteAttributeString("complete","50");
tw.WriteAttributeString("fixed-start","false");
tw.WriteAttributeString("priority","1");
tw.WriteAttributeString("expand","true");

tw.WriteStartElement("notes");
tw.WriteEndElement();

tw.WriteStartElement("depend");
tw.WriteAttributeString("id","");
tw.WriteAttributeString("type","2");
tw.WriteEndElement();

tw.WriteEndElement(); // end task
tw.WriteEndElement(); // end tasks

tw.WriteStartElement("resources");

tw.WriteStartElement("resource");
tw.WriteAttributeString("id","1");
tw.WriteAttributeString("name","Pasan");
tw.WriteAttributeString("function","SoftwareDevelopment");
tw.WriteAttributeString("contacts","pasan_yasantha@yahoo.co.uk");
tw.WriteAttributeString("phone","0722 133 702");
tw.WriteEndElement();

tw.WriteEndElement(); //end resources

tw.WriteStartElement("allocations");

tw.WriteStartElement("allocation");
tw.WriteAttributeString("task-id","13");
tw.WriteAttributeString("resource-id","1");
tw.WriteAttributeString("load","100.0");
tw.WriteEndElement();

tw.WriteEndElement(); //end allocations

tw.WriteStartElement("vacations");
tw.WriteEndElement();

tw.WriteStartElement("taskdisplaycolumns");

tw.WriteStartElement("displaycolumn");
tw.WriteAttributeString("property-id","tpd3");
tw.WriteAttributeString("order","0");
tw.WriteAttributeString("width","75");
tw.WriteEndElement();

tw.WriteStartElement("displaycolumn");
tw.WriteAttributeString("property-id","tpd4");
tw.WriteAttributeString("order","1");
tw.WriteAttributeString("width","75");
tw.WriteEndElement();

tw.WriteStartElement("displaycolumn");
tw.WriteAttributeString("property-id","tpd5");
tw.WriteAttributeString("order","2");
tw.WriteAttributeString("width","75");
tw.WriteEndElement();

tw.WriteEndElement();

tw.WriteStartElement("previous");
tw.WriteEndElement();

tw.WriteStartElement("roles");
tw.WriteAttributeString("roleset-name","Default");
tw.WriteEndElement();

tw.WriteStartElement("roles");
tw.WriteAttributeString("roleset-name","SoftwareDevelopment");
tw.WriteEndElement();

tw.WriteStartElement("roles");
tw.WriteAttributeString("roleset-name","Operator");
tw.WriteEndElement();

tw.WriteEndElement(); //end project
tw.WriteEndDocument();

tw.Flush();
tw.Close();

.NET FRAMEWORK 3.0

About .NET Framework 3.0

The Microsoft .NET Framework 3.0 (formerly WinFX), is the new managed code programming model for Windows. It combines the power of the .NET Framework 2.0 with four new technologies: Windows Presentation Foundation (WPF), Windows Communication Foundation (WCF), Windows Workflow Foundation (WF), and Windows CardSpace (WCS, formerly "InfoCard").


Learn about .NET Framework 3.0 Technologies

Refernce : Microsoft

Tuesday, October 03, 2006

Reduce application development time

Do you want to reduce your application development time by 70%?

Then use IdeaBlade's DevForce Express 3.2

DevForce Express is the award-winning .NET productivity suite from IdeaBlade that extends the .NET Framework and accelerates application development. New advanced features in this release include support for in-memory checkpointing, paging, and asynchronous queries.

Download IdeaBlade's DevForce Express 3.2

Windows Vista Release Candidate 1

Now you can download Windows Vista Release Candidate 1 from the below links.

Please use these links to access the download:

English: http://download.windowsvista.com/preview/rc1/en/download.htm

German: http://download.windowsvista.com/preview/rc1/de/download.htm

Japanese: http://download.windowsvista.com/preview/rc1/jp/download.htm

2007 Microsoft® Office system Beta

Discover the latest refresh to the 2007 Microsoft® Office system Beta.New features of the Beta 2 include an updated user interface and better accessibility support.

Download Office 2007 Beta 2