"যদি তোর ডাক শুনে কেউ
না আসে ... তবে একলা চলরে",
when whole world fighting for get the answer "Is WPF dead?!!" we have been
successfully start deploying our second product build on WPF to local client
end. We have worked around 2yrs on this project. Official code name of the
project (or short name) is "iSB" and product trade name is "iStock Broking".
Targeting on local (Bangladesh)
market, this is our first product.
Before share my knowledge on this project, let me
give you overview of this product. "iStock Broking" is an efficient trade and
settlement management back-office system designed for broker-dealers, with
integrated processing capabilities, encompassing all facets of trade
management. Download Brochure 2011
Let's see what I have learned in this project. "iProject
Master" (our first project on WPF) gave us skill and confidence on WPF. We have
decided extend those further with this project. We have used XAML, C# and our
own developed application framework (Mystra) to develop this product. "Mystra"
is one of our proud, but currently I'm not open to talk about that and C#, I
don't think I need to talk about it. Let's talk about XAML. For them who don't
know about XAML, is a language used to design UI as like HTML.
XAML has a feature called bind anything to anything. This
feature gives you to bind any UI control with any object. You can not believe
how usefully this is. I am practicing OOP several years, but never utilize object
this way in UI design & data binding. On this project, I closely view and
understand concept about easy to use UI. Sometime development team overlooks UI
design. On a product, UI must be design according to its end user level of
experience. This will reduce overhead of the support. With XAML we have done it
easily.
Making custom control and changing control style is easier
with WPF. Looking cool is always big factor in any process, from impress girl/boy
to sale your product. Cool looking app forced client to think about quality of
the apps with other apps. WPF gives you built-in cool looking. You do not need
to give any extra time on it. Even we do not use 50 percent of WPF feature, but
we are start loving it.
Always avoid hard coding in your product code; it'll
give you hard pain later. Avoid it does not very tough. Just ignore to do it;
you will get your way to done that job.
First time, I am conduct training to end user. Only
user manual is not enough for its end user. This is unusual kind of incident
for me. I was not a good teacher, but I am always quick learner. At the end it
is very fun tasks for me. I am utilizing that outcome to improve and future development
of the product.
I loved to face challenge, after successfully
complete one round ride of WPF roller-costar. I like to ride on Silverlight. Hoping
MS bring some good news with Windows 8 and HOPE IS REAL.
*iStock Broking and iProject Master mentioned herein are registered trademarks of Business Object Solutions Ltd.
Technorati Tags:
WPF Microsoft Mystra Trade Management Trade Management iStock Broking XAML
Few days back I had completed my certified ScrumMaster training from Pete Deemer of GoodAgile in Bangalore, India. Pete was one of the best instructors I had ever met. The training was really good. We had done lot of practical simulation rather than just learning theoretical knowledge from presentation.
On the first day, we had learned Scrum basic concept, self-organize team benefit, identify the team velocity by done a simulation called paper airplane test, and understand ScrumMaster 3 P’s responsibility. At end of the day, we had done a full sprint simulate by assemble a two floor paper building. We had finished our first day after seat on an exam.
By received last day exam result we had begun our second day. On the second day Pete gave us a fat blue book. At the end of the day that blue book becomes skinny. On the second day we had focus on estimating budget, schedule and release date, burn down chart, release sprint, distributed scrum & team and planning poker. After successfully attend 16 hrs training Pete Deemer arrange a little graduation ceremony for us, where he teach us a secret to recognize other ScrumMaster. :)
I had completed 16 hrs training requirement for become Certified ScrumMaster. I would like to thank Siti Ja’afar of GoodAgile for her kind co-operation. May be it will not possible for me to attend this training without her co-operation.
Almost every IT professional starts working on IT industry after complete his/her graduation. After working several years on this field, suddenly they realized that they need some more education in their technical field. Seeking for that some start MSc. Or Ph.D or other university education. Others whom are not like to sit on the class room branch and hear some boring staff (not all of them are boring), looking for get some specific knowledge.
Everyone look for that knowledge which can add value to their career. Last few days I am looking for that kind of thing. I have gone thought some article, web resource and survey. So I thought let share it with all. Make a list of those certification, which can add value to you career.
I have divided those in three sections – Project Management, Developer and Networking.
+ Project Management – Any kind of project you need to make a proper planning to make it successful. Following certification can add management skill value in you career.
-
-
-
ITIL® v3 – stands for the IT Infrastructure Library.There is also a version 2.
-
CSM - Certified Scrum Master. This is my personal added suggestion. I thing this will soon rock.
+ Developer – Are you working on product/software directly as programmer/designer/database? Yes, those are for you my dear friend.
- MCITP - Microsoft Certified IT Professional credential is likely to become the next big Microsoft certification.
- MCTS - Microsoft Certified Technology Specialist.
- MCPD - Microsoft Certified Professional Developer.
+ Network Administrator – I have never work on networking directly in my professional career, but I had passed lot of time with networking issue. Following are currently rocking all around the world.
- VMware – virtualization software. You may say what the hell that is. But my friend this is the hell coming forward you. The future of next generation web/data networking. Go and get some knowledge, if you don’t have any.
- CISSP - Certified Information Systems Security Professional
- Security+
I have only enlisted top three certifications in here. I do not make this list for beginner. Above certifications/courses are only suitable for experience IT professional. All section certifications are listed as their rank in currently world. Every link will take you to the original vendor provider site. You may go there for learn more about it. Use google (mamu) if you are hungrier. All certifications are some requirement. Please look those carefully before you select one of them.
Last but not the least, when chasing any professional certification, you should give much attention and care to your education, experience, skills, goals, and desired career path.
Technorati Tags: certificate,career,skill,Professional,CAPM,ITIL,Scrum,MCITP,Microsoft,MCTS,MCPD,VMware,hell,generation,data,CISSP,Information,Cisco,beginner,Above,vendor,provider,requirement,attention,path,Systems,skills,goals,three,software
Windows Live Tags: certificate,career,skill,Professional,CAPM,ITIL,Scrum,MCITP,Microsoft,MCTS,MCPD,VMware,hell,generation,data,CISSP,Information,Cisco,beginner,Above,vendor,provider,requirement,attention,path,Systems,skills,goals,three,software
WordPress Tags: certificate,career,skill,Professional,CAPM,ITIL,Scrum,MCITP,Microsoft,MCTS,MCPD,VMware,hell,generation,data,CISSP,Information,Cisco,beginner,Above,vendor,provider,requirement,attention,path,Systems,skills,goals,three,software
May be the title does not match with my topic, but I do not found more appropriate title than this. I know, it is too late to share my first experience about WPF, but I like to share it with you. In here I am going to talk about few point, first one is why we try WPF, second what are the challenge we have faced and last but not the least what lesson we have learned.
Why we try WPF?
Before get into main point, please allow me to highlight the background. I have heard about the WPF in mid of 2008. Microsoft brings lot of “W” (WPF, WCF, WF) in .NET 3. So that time we were just identifying those frameworks. Before a project we had prepared a report about WPF for select the technology. In that time, we had noticed a feature in WPF: WPF standalone application and WPF Browser hosted application. We keep that in our mind but reject the WPF that time for that project for insufficient resource, skill and framework maturity.
After six months later we took that report, review it again and persuade our supervisor to do that project version 2 in WPF.
Now why we had select WPF for version 2 for that project is the main point. First version was built in ASP.NET. Let’s make a note what we are needed to learn if you want to make RIA application in ASP.NET: HTML, JavaScipt, C# (or any CLR language) and CSS. Did I miss anything else? Please put it. Now you have a small (3-4) development team. They’re skill is upper than beginner but not in expert level. I never believe that one person can become expert more than one language at a time. You don’t have more than six-eight months for that project. Now what is in your mind? Fire all of your exiting developer and get new staffs!! By the way, I had forgotten to tell that you have to build a desktop version of the application in same time.
Now let’s make a note what we need to learn if we chose WPF: XAML, C# (or any CLR language) ….. … … I think nothing left. Help me to remember if I miss anything. In the same development time you can get a desktop application and browser hosted application. You just need to learn XAML from scratch.
I think now you can understand why we try WPF. We had chose WPF browser application, but after the deployment, we understand the difference between the browser hosted application and standalone application more clearly. We made a mistake but it does not cost us too much.
What are the challenges we have faced?
The first challenge was to convince supervisor to assign us a test bed project for WPF. But we had done that very easily because our supervisor also likes to walk through inside new technology. I hope that you will not face it now because lots of sample LOB applications are currently available in this day.
The second challenge was learn the XAML. If you are not very familiar with ASP.NET UI design the XAML will look very disgusting, but later we will understand it power.
Its data binding technique is one of the new concepts for us. When we had taught that it controls can bind any to any we gone crazy.
The third was to identify the right navigation technique. By using “Navigation”, I want to mean that how user will navigation in your application not WPF navigation service.
The fourth was inherits problem, XAML does not support inherits. There is no container like inherit form. We can do it but it is costly in sense of code.
The fifth challenge was build responsiveness UI. When you are running long process WPF UI become hang up until that process has finished.
The sixth was finding a web server near to you for deployment. We have build WPF Browser hosted application so need to deploy it in a web server. So we were looking for a local company to host our application. I had email 25 ISP with our requirement, but unfortunately only 3 ISP was reply back and said they do not have that facility currently available. So we had hosted our application in USA server.
Lot of other challenges we had faced, but above are significant challenge we have passed.
What lesson we have learned?
New technologies always give you a thrill. But it can take you to inside black hole. Never use a new technology in your product line. Take a calculated risk; do not depend on technology provider. They can move from their position with out thinking of you, because you are no body to them.
Take a look the online resources currently available, if you think its enough for you then go for it, unless wait and learn. Resources are very important because you can not do the research for the every part of thing. Look how many communities are grown for that technology and monitor its activity. It gives you lot of knowledge and allow to take support when you needed that.
Sitting on a third world country, it is very difficult to utilize new technology feature and get benefit from it because of infrastructure problem. But if we do it in right time we are the best among all, nothing can hold us behind.
Below is a screen shot of that application.

*This image is a screenshot from iProject Master, and the copyright for it is most likely owned by Business Object Solutions Ltd.
আমরা প্রায় দেখি আমাদের social network (Facebook , twitter) এর বন্দুরা তাদের status message বাংলায় লেখে। এটা সম্ভব হয়েছে Unicode এর কারণে, আমি Unicode কি তা নিয়ে ব্যাখা করব না। Unicode সম্পকে জানতে হলে মামুকে (Google) জিঞ্জাসা করলেই হবে। আপনি কিভাবে বাংলা লিখবেন তাই বলব।
আমি আগে বাংলা লেখার জন্য বিজয় ব্যবহার করতাম, বিজয় এর keyboard layout আমার কাছে কঠিন লাগে তাই বাংলা ব্যবহার করা ছেড়ে দেই। তার উপর বিজয় আনলাইনে আসে না। আমি Unicode install করেছিলাম, কিন্তু বাংলা লেখা সাইট গুলো সমস্যা করতো, সে জন্য ওটাও বন্ধ করে দেই এবং বাংরেজী শুরু করি :) । একদিন আমার এক বন্ধু সাহায্য আমি নতুন keyboard layout পাই Avro। এটা Unicode compatible তাই আনলাইনে বাংলা লেখা যায়। এটা install করার পরেও আমার বাংলা সাইট গুলো কোনো সমস্যা করেনি। Avro keyboard layout টা আমার সবচেয়ে ভাল লেগেছে কারণ এটা অনেক সহজ, উচ্চারণের সাথে মিল রেখে করা...
ত – t
ক - k
আ - a
ব – b
প্রগ্রামারদের জন্য
Coding এ comments দেওয়া একটা গূরূতপূণ বিষয়। আমরা বিভিন্ন সময় sample code এর comments রাশিয়ান ভাষায় বা অন্য ভাষায় দেখতে পাই। Avro দিয়ে আমরা comments আমাদের মাতৃভাষায় লিখতে পারব। এটা অনেকটা critical কিন্তু মজার বিষয়। Font size টা একটু বড় করে নিতে হবে।
তাহলে বন্ধুরা ভাষার মাসে মাতৃভাষা লেখার চেষ্টা কর। আবার দেখা হবে কথা হবে...
** জাহিদকে ধন্যবাদ আমাকে এই Post টা লেখতে উৎসাহ দেবার জন্য।
Last few weeks I was too busy with
our new product. I was giving a final touch of a large WPF application (demo
version). We called it iProjectMaster. Soon I will give you more update about
the product.
It took 6 months to design
& develop this product. Our big achievement is we made this in WPF
Technology. As far I know that we are the first team in Bangladesh who
has build WPF Browser application. Today I do not go down to more
deep about this. Soon I will share this big experience with you. That all for
today I will come back soon. :)
Yesterday Microsoft community arranges a window 7 launch celebration party on Dhaka. This is second time community arrange this kind of event. This event was quite systematize and resourceful than previous event. It is a courtesy to say thanks to the entire team and those are directly/indirectly related to organize this event for us.
First of all I need to address that this event was for IT Professionals not for developers. If you were expecting some code, so you will be disappointed. Yes there was an agenda for developer.
The event was started on time; Organizer did the right work, last event was almost one hour late. I was failed to attend on time. As a penalty I missed Keynote speech and some part of Ferdous vi session. I saw that he was showing history of windows. After his speech a tea break was taken.
Introduction to Windows 7: Omi Azad MVP was introducing this session. At the beginning he was showing some side that was already he shown on last event. I though this will be unexciting session for me. But suddenly he was start showing his magic. New slide were bringing in with very important resource. As developer I got a new clue for develop software with Bangla interface.
IE 8 and Windows Live Services: Ashic Mahtab MVP was introducing this session. He was showing feature of IE 8. We had already familiar with most of those features, if we are using FF or Google Crome. I am not a full time web developer, but one feature has caught my eye as a web development point of view. In IE 8 there is feature where you can bookmark a DIV. They are calling this “WebSlice”. You can load only this part as like RSS. I never saw this feature before. He said that its need to be done some code for activate this feature in web. I will share more information if I get a chance to look at this.
Windows Lightning Talks: This was actually a Q&A session. Omi Azad MVP was answering most of the question. All questions were related to Windows 7. We had already known that Omi vi is a fun loving guy. This was most interesting session for all of us, especially when we said “Dari raklay to Dari hoba”!!!!
Windows 7 for Developers: This was the only agenda for developers. In session, we were introduced how we can build application targeting windows 7. In here we got hint for making multi touch application. This session was represented by Mohammad Ashraful Alam MVP.
Constructive Criticize: Criticize is not a bad thing, sometime people does not take this as a good manner. But I always believe that without criticized your work by other you will never able to go ahead. Your well wisher always shows your mistake not your good, becoz they want you to see as perfect.
This event was overcome most of the error they had done on previous event. The event was so short in time. If there were put lighting talk in last topics other presentation got some space. The tea session was too long. Almost 30 min it makes the event out of the time. We had a big complain about feedback form. It had lot of mistake. I am not taking about on T-Shirt issue. There was a table for rate the event. By mistake we had asked to rate about the Microsoft Day @ Dhaka event!!! This was a silly mistake. Someone copy that from previous event file and forget to edit that. I can remember that our teachers were always said “Never make mistake my name spelling, or you will not pass the assignment paper”. Gift distribution system was more improved than previous. I did not found any agenda presentation slide inside CD. I think it should be given with that as like PDC event.
I am hopeful that next time; Microsoft will try to arrange an event for developer.

Booting Screen

Login

WallPaper

Desktop


Proposed Agenda:
- Introduction to Windows 7 (Presentation)
- Demonstrate Live Windows 7 (Live Demo)
- Introduction to IE 8 (Presentation and Live)
- Demonstrate Windows Live (Presentation)
- Windows 7 installation on interested audience's laptop
- Small Quiz and distribute small gifts to the participants/winners
Contact: Omi Azad
In this writing I will explain you how to use SHFB for complete your class library documentation. This writing is only valid for .NET 3.0 or higher. In this piece of writing I am using Visual Studio 2008 for demonstration.
An API document of an application is one of the dullest tasks for each and every one of developer. Before VS 2008 there is an application called “NDoc” makes it very easy for everyone. But NDoc does not provide support .NET 3.0 or higher. In this article, I will try to explain how you can use SHFB to generate MSDN style documentation for your .NET assemblies build on .NET 3.0 or Higher.
What do I mean by SHFB?
SHFB stands for “Sandcastle Help File Builder”. Sandcastle, created by Microsoft, is a tool used for creating MSDN-style documentation from .NET assemblies and their associated XML comments files. The SHFB can produce an HTML Help 1.x (.CHM) file, an HTML Help 2.x (.HxS) file, and/or a website.
How much it will cost?
This is created by Microsoft. So you may asked, how much it will cost!!! But this product is totally free comes under Microsoft Public License (Ms-PL) as like many other projects of Microsoft. The project is hosted at CodePlex in the Sandcastle Help File Builder project. You can download it by click here.
How to use it?
I do not like go through with the entire installation step. It is very easy to install. You can find the details in Installation Instructions of SHFB. Please make sure that everything is configured correctly.
How to generate the XML file?
If you have already known how to generate the XML from your code, you may skip this part. I am guessing that you have already comments you code. Now please open your class library solution. Right click the class library project and select “Properties”.
Under the “Build” tab there is “output” area. Check the “XML documentation file”. Now build you project, you will spot the documentation file in XML format in allocated location.
Add Assembly to SHFB Project
So now your project is almost ready for documentation. Guessing that you have already install SHFB. Open the SHFB GUI from user start menu. Select “File > New Project” from menu. Save the project using “Save as” dialog box. Right click on the “Documentation Sources” node in the “Project Explorer”.
In the context menu, please select “Add Documentation Source” for add the assembly file. Browse and select you class library assembly file. XML file will be automatically added, if associate XML file is found in same place. You may change some properties value in “Project Properties” such as HelpTile, HeaderText, FooterText, CopyrightText etc...
You may also mention the help file format in this window. I am using “HtmlHelp 1x”.
Finish it up.
You have already add the assembly and made some change in “Project Properties”. Now build the file. You can see the “Build” button on toolbar window. Click on it.

That the enough work you have done. Now the entire build process message will display in the console made by GUI. If there is any error arises, please check the SHFB Help documentation according to the error code. After successfully complete the build process check the output directory you will find the *.chm file.
Congratulation!!! You have just made your first .NET assembly documentation in SHFB. There is lot more option in SHFB; I hope you will find it one by one.
Last time I was finished up to before lunch session. Today I
will finish up to last session
Productive Challenges of
ASP.NET Website: This presentation had represented by Omar Al Zabir MVP.
After the lunch this session was started with full house. Before that day, I
never got opportunity to meet him face to face. I only heard about him, Omar is
that Omar is this bal bal bal.... and I am surprised that all the chitchat is
really true!!! Even he is better than those gossips. He was become the saver of
this event. He is incredibly good best speaker, I ever saw after Sam
sir. He knows well how to interact with audience. I think 98% audiences were
able to march with him till the end. He shows us some mistake that we made in
our productive project. This session was become very costly for our company for
some technological reason. Anywaz at least we can track the right track. I
think .01% audiences find him bad. But there was no doubt he is saver of the
day.
Introduction to MS Sharepoint
Server: Personally I do not know MJ Ferdous. But We
know each other via MSDN Bangladesh Forum. I called him Ferdous vi. I know he is dreadfully excellent
with MOSS. Few months ago I was setup WSS 3.0 for my company. That stages I was
taken some assist form him. He has also done a good speech. But he came after
Omar Al Zabir MVP. So
somebody might think he is not good. Beside that few people were interested
about Sharepoint Server or have some concept about that. He owes thanks from
me, becoz he extend his last question amount just for me as far I realize. So,
thanks for giving me that break.
Overview of Visual Studio Team
System 2010: Mohammad Ashraful Alam MVP was second best speaker
of this event. He is three time MVP holder. Within short time he was able to
give us a successful overview of Team System 2010. Beside that he the only
speaker give speech in Bangla. He was also good with audience interaction. I
like his makeover during speech. Moreover he is first speaker who share his PPT
(you will find it in MSDN Bangladesh.). Ferdous and Tanzim vi also shared their
PPT later. But I thing make me witty that he was wear a suit in hot summer. As far I saw he was only person wear in suit in
that event.
Feature of windows 7: Omi Azad MVP was introducing this
session. He was the senior speaker among all other speaker. But he was the
youngest speaker by his appearance. He is an interesting speaker. He talks
audience as like friends. That brings extra comfortable to audiences. His Q&A
session is the best among all Q&A session. Even Omar Al Zabir session
Q&A was become second after this session in popular Q&A session
categories. He knows well how to make fun. If you were there but missed this
Q&A session, it's mean you missed the best shots. I am very sorry for you.
Thanks to Omi vi (said not to say him sir) for this stunning session.
I did not able to attend last session
and can not find interest in Windows Azure session, so I did not mention those
in here.
Conclusion: In that event
almost every session some Windows 7 beta CDs was thrown away. This was most
indiscipline moment of every session. A level of discipline must be maintain by
all, not only organizer but also participant. First organizer should not give
gift items if quantity is not good enough. It should not be happened at this
level of event. Secondly participants those are run for CDs not only ambushing
themselves but also other participants. I think everyone should be understudied
this; you are not a kid now. That was a childish act we had done.
It is very easy to say but difficult to do. It is very
easy to criticize other. I have no doubt that all speakers tried their level
best to interact with us. No doubt they are the best in Bangladesh in
their expertise. In this section I just express my experience in that event. I
have no intuition to hurt other. If I hurt someone, I am extremely apologetic
for that. I can say that in publicly. I have no shame to say sorry, if I make
gaffe. I have very little experience in this profession. Hope Microsoft will
arrange this kind of event more often. I am anxiously waiting for next one. See
you then.
Last Saturday Bangladeshi MVPs
were arranged an event in Bangladesh
for developer and IT professional. This is also directly supported by Microsoft
Bangladesh.
For the first time I was attending a Microsoft Technology oriented conference. I
am very glad to get chance to participant that event. Only 200 developers and
IT professionals were get opportunity to join this event.
In that event there were 10
agendas presented by 11 speakers including 5 MVPs. Let discuss each of the
topics:
Introduction: The event
was behind the time schedule from the starting point. No matter what is the
reason this should not be happened. They are blaming IDB authority for this,
becoz they does not following DTS time. I hope this will not be happened in
future. Thanks to Abhishek Knat, he had done very good job. He had done all the
setup within 1 hr.
Opening Speech: Microsoft Bangladesh
country manager Feroz Mahmood had represent opening speech. He is Microsoft
guy, so obviously he has said all good things about them. He did not forget to
tell that Microsoft release DTS hotfix for Bangladesh within 19 days. Also
mansion all the social activity currently they are doing in Bangladesh on
behalf of Microsoft.
Then Abhishek Knat shows us some
very useful links. Actually he was trying to show, how Microsoft is always
beside their customer/developer. I think he is also Microsoft guy, but I am not
sure about that.
Developing in ASP.NET: Tanzim
Saqib is show how to create an ASP.NET web project. With full respect to him,
this is most wasted time in the whole event. Most of the developers in that
hall are ASP.NET developer. So display this is just a waste of time. This topic
distributes the sleeping pill, now only need water. May be I am wrong, some
might be fined useful. This is just my own opinion.
My first ASP.NET MVC App: This
is one of those topics, which bring me to this event. But I am totally
disappointed. This topic content was better and demo are good, but speak is not
up to the mark. I don't know why!! Here goes the water. Anywaz this was
represented by Mehfuz Hossain MVP.
Unit Testing in MVC and Deo of
dotnetshoutouts.com: I think he was so tired during his speech. I was count
that he had done minimum 10 min codes without talking to listener. So developers
got very good environment to fall on sleep, becoz sleeping pill was already
ate. He was also mentioning that during his Q&A session. But I have got
some useful open source testing software links, which I was looking for past
few days. So this session was become helpful for me. All thanks goes to Kazi
Manzur Rahid.
Developing in Silverlight: Last
couple of months we are prepared us to fit in WPF. So this is the most important session for our
company, especially Q&A session. Faisal Hossain Khan had done almost every
this ok. But lunch time makes the damage. I think he doing well expect Q&A
session. Abhishek Knat was brilliantly fixed it up. We have got lot of
questions answer. That will help our company to make a good decision.
To be continued..... (Part 2)
Some of us will have experienced with coding documentation. C# and Visual Studio gives us the ability to maintain code and it’s documentation in the same file, which makes the whole development a lot easier. VS.NET provides specially marked and structured comments within the code and help to build them into an XML file. There are many different tools that can be used to generate human-readable documentation in a variety of forms including web pages, MSDN style documentation and etc...
To document any element in a C#, you tag the element with XML elements. XML tags are added to source code by prefixing the XML comment lines with three forward slashes. Visual Studio will automatically put in a documentation outline whenever three forward slashes are typed within C# source code file.
/// <summary></summary>
/// <param name="Employee "></param>
public void Save(object Employee)
{
}
|
The Save code comments are inserted as default. The C# compiler reads documentation comments in your code and formats them as XML into a file. You are required to enable “XML documentation file” in Visual Studio properties to generate the XML file.
The XML comments tags
The following are some important XML comment tags supported in C#. Note that the content of each element should be written between its opening and closing tags, and some of the tags also take further attributes.
|
Tags
|
Description
|
|
<summary>
|
holds overview information about any documental element. This tag should be used to describe a member for a type.
|
|
<remarks>
|
can be used to supply additional information about a method or class, supplementing the details given in the summary tag.
|
|
<param name="name">
|
should be used in the comment for a method declaration to describe one of the parameters for the method.
|
|
<returns>
|
should be used in the comment for a method declaration to describe the return value.
|
|
<exceptions cref="type">
|
lets you specify which exceptions can throw by the element.
|
|
<example>
|
lets you specify an example of how to use a method or other library member. Commonly, this would involve use of the code tag.
|
|
<code>
|
gives you a way to indicate multiple lines as code. Generally used in conjunction with the ‘example’ element.
|
|
<Value>
|
lets you describe a property.
|
|
<c>
|
gives you a way to indicate that text within a description should be marked as code.
|
|
<paramref name="name">
|
gives you a way to indicate that a word is a parameter. This tag can be used to refer to a method's argument elsewhere within the method's XML comments.
|
|
<para>
|
for use inside a tag, text within the tags should be formatted within a paragraph.
|
|
<list type = ”bullet” | “number” | “table”>
|
allows bulleted or numbered lists or tables to be added to XML comments.
<list type="table">
<listheader>
<term>ID</term>
<description>Name</description>
</listheader>
<item>
<term>001</term>
<description>Karim</description>
</item>
<item>
<term>002</term>
<description>Rahim</description>
</item>
</list>
|
*Note that here are only important tags, there are also other tags are available.
Once the XML comments have been added to the code, it is useful to be able to do something with them. Code documented in a standard format is a clear benefit. You can get great technical documentation at a level so close to the code.
Expectantly this piece of writing will cheer you to add comments to your C# code. Whether you are functioning for a business or for yourself, well commented code always looks professional. It can also give you the aggressive edge over other developers and businesses.
Many years I am working with MS technology. Using different technique & technology (Microsoft) I am doing my all data access work from different data store. Now Microsoft introduces a new data access technique call Entity Framework. One day I was working with that suddenly I through, what was the past MS data access technology. Then I read some book, article and go through MSDN for MS data access path way. So, I like to share that with all of you.
.NET Framework has provided a platform for developer to develop complex applications that meet up variety of business problem. Those applications bring with it the need to access and manipulate an equally diverse array of data sources and formats. The rise of internet and the computer environment built on much more abstract format.
At release of SQL Server 1.0 at 1989, Microsoft has taken lead role in providing developers with necessary tools to develop database applications. Providing a wide range of adopted set of APIs and COM implementation that database vendors could implement, Microsoft has made it possible for several thousands of data sources to be access via a uniform set of data access client.
Open database connectivity
After the release of MS SQL Server product that was develop in tandem with Sybase SQL Server. Microsoft realizes the issues of providing a standard method of connectivity that allow developers to utilize the SQL server from their applications. To address this need, Microsoft, IBM and a number of other manufacturers teamed up to develop a standard API that would simply the interoperability between their various product. As result Microsoft was provide that was called Open Database Connectivity API or ODBC. This allowed developers much more freedom to develop their application selecting different database. They were not trying to themselves into extremely proprietary and cryptic API, and possibility existed for changing database without a major rewrite of API specific code.
Problems arise: The primary drawback of using ODBC was not easy to use a low-level API such as ODBC to provide data access. Beside that the existence of a standard API for direct data access to all sources meant a much more standardized development community.
Visual Basic 3.0
Corporate level is begun adapt visual basic with release of VB 3.0 in 1993. Microsoft first time introduce Visual Basic developers with a method to easily connect various data sources and build much more robust, data driven applications. Two primary technologies that made this possible were jet database engine and a revolutionary new object model called Data Access Objects.
Jet database engine
The jet engine was initially developed as core database engine for MS Access database. Until the release of VB 3.0 this engine is specific for MS Access database and never use for any other MS products. Microsoft release a new version of Jet engine that allow developers to utilize the service that provide by Jet to interact with any data sources that provided by an ODBC driver. Jet Engine was providing a perfect tool for developers to use data from any ODBC data source without having resort to low-level API programming. The initial focus of the jet was on ISAM (Index sequential Access Method) databases such as MS Access or DBase. Those database does not support or have not feature which is available in large, enterprise RDBMS such as store procedure or server-side query.
Problems arise: One the primary problem of early adoption of jet engine was it size, which take more than megabyte in memory during use. Due to power lacking this was a heft chuck to bite off your standard database application. Beside jet engine provide a thick layer between the client app and database that served to add a large amount of over head to even the most basic database function. Another serious architecture drawback was that all query processing occur on client machine. Jet did not provide the facility to take advantage of server-side queries.
Data Access Objects
Because of DAO (Data Access Objects) VB 3.0 and Jet engine 1.1 was gained such large number of acceptance. DAO was provided a simple and flexible method for connection and manipulating data in any data source compatibility with jet. DAO was provided simplicity of data access through DAO structure so that VB developers allowed developing more robust and powerful database driven application. Not only just a standard object model but also it provided a platform for third party vendors to begun into developing which lead toward a huge market of data-bound control and widgets. Worldwide Million of VB developers utilized DAO as a power data-access tool.
Visual Basic 4.0
Visual Basic popularity was just rock after the release the VB 3.0 and its data access tools at corporate world. So, Microsoft addresses the issue of those tools architecture and functional limitation they imposed. With the next release of VB 4.0 Microsoft extended the functionality of those tools and also provided two new database-access methods to take advantage of full RDBMS systems.
VBSQL
VBSQL support VB developers to connect directly to SQL Server Database using its low-level API. This API, built around the C-Based DB-Library, provided a lightweight and high speed interface that was easy to code when using VB.
Problems arise: VBSQL only for SQL Server database which did not have a significant market share in early ‘90s. Beside that time object-oriented and database-neutral methods fro database access become available, as also developers become less interest to code directly in a database API.
Remote Data Objects
VB 4.0 was also included a new data-access object that was called RDO. RDO was solved the problem that was facing by developers during develop a large distributed client-server applications with DAO and jet. Comparing with DAO and jet, RDO provided much smaller and faster client-side object.
Problems arise: RDO provide as a thin object interface directly to the underlying ODBC driver. The RDO consists only 10 objects compare to 17 objects in DAO.
OLEDB
In late 1996, Microsoft announced new next key technology in its quest for a unified data access paradigm. OLEDB was built on MS new COM architecture. OLEDB methods focused on presenting data in a standard format. OLEDB was based on underlying idea of implementing data provider and data consumer. With OLEDB, Database vendors provide high performance providers implemented as COM object. These providers organize their underlying data into a consistent view of data and the make this data available as tables. Other the data was aggregated into this common view, data consumers could be developed to provider a consistent interface to this data. By providing the capability to display both structure and unstructured data in a common format. OLEDB allows consumers to use a standard syntax such as SQL. OLEDB provider increase significant performance comparing the old ODBC. Microsoft could not just ignore the exits ODBC driver on market, so an attempt to help speed adoption of this new data access technology, Microsoft first build OLEDB provider for ODBCdriver.
Visual Basic 6
OLEDB has been successfully standardizing on OLEDB provider as core technology for interacting with any type of relational or non-relational data stores. Now Microsoft next step will be provide data consumer which would have build on standard OLEDB provider.
ActiveX Data Object
In 1996, OLEDB consumer, ADO has become most popular object-oriented, data access technology. ADO 1.0 was initially used to develop web sites with ASP. Microsoft released a single data access package called Microsoft Data Access Component (MADC) that contained both its current OLEDB provider and ADO objects. ADO provides developers the capability to query and manipulate data from any OLEDB complaint provider. The lack of deep object hierarchy is the main different between ADO object models and either DAO and RDO. ADO developers are allowed to access the data using RDO Recordset-type objects, which allow them to create and manipulate providing the functionality such as Remote Data Service, disconnected Recordsets and XML-based persistence. ADO object has evolved over the few years to help address the growing disconnected nature of the internet.
Recordsets
Recordsets object provides primary interface when using ADO to interact with a database, effectively serving as a developer’s window into data store. All data manipulation using ADO occurs through this window. ADO subsystem handles all the process to make sure that all the changes are made back to the database. Recordset object allows manipulating a subset of data from database. Each Recordset object consists a set of rows and columns that we can traverse to get or set the information we need.
Problems arise:
The ADO Recordsets object simply manipulates all the data values as variant type. That gives a huge amount of flexibility and neutrality. But this provides ADO Recordsets with its biggest performance hit.
When dealing with all Microsoft’s previous implementations of data access technology, it is most important to understand that they all are tied to Microsoft windows platform. Both the object models and the ODBC drivers or OLEDB providers that serve up the data are tied to Windows-specific implementations.
I am tried to put all the past Microsoft data-access technology before ADO.NET in here with very little description. Please let me know if I miss some of the part. Thanks for you time to read this.
Last few months I and my teammates are working with several service base applications. In last project I had faced great deal of problem with service. That was my first windows service application. That time I realized that windows service application does not allow debugging as normal application. That project I was using log file to debug the win service application. I have not enough time to find out that problem solution. Later I find a solution how to debug a win service application as like normal application (but not quite similar).
A windows service was a little different than normal debugging of an application. Here we’ll look into how you can debug your windows service.
First, open Visual Studio and load your win service application, if it’s not already there. Assuming your build was successful; you can now install and test your windows service. There are two ways to install, we can use the installutil.exe, or create a full blown MSI installer.
We’ll need to open a Visual Studio Command Window. Start, All Programs, Microsoft Visual Studio 2005, Visual Studio Tools, Visual Studio Command Window. If you are running under Vista, STOP! Do NOT click on Visual Studio Command Window. Instead, right click and pick “Run as Administrator”. Again that’s for Vista, for XP just click since you likely have Admin rights.
Now in the command window navigate to the bin\debug folder where your project compiled.
Now comes the neat part. Under the Debug menu in Visual Studio, select “Attach to process…” When the dialog below appears, you will need to check the “Show processes from all users” and “Show processes in all sessions” boxes. Now your list should update correctly.

Scroll down and look for the process with the same name as your executable, in my case it was TimeLogger.exe. Click on it and the click the “Attach” button in the lower left.
If all went well Visual Studio should shift to “Run” mode. Your code will be locked (sorry, no edit continue with windows services). But you can go in and create breakpoints.
Now sit back and wait a minute, when our service fired (Use service Manager for start or stop service). It will fall into the standard debug mode you’re used to, as you can see below.
When you are done debugging and are ready to disconnect from the service, simply return to the Debug menu and this time pick “Stop Debugging” (or hit Shift+F5). Visual Studio disconnects you from the running service and returns you to normal code editing mode.
Resetting for another test is still a bit painful. You’ll want to stop your service, then in your Visual Studio Command Prompt window run InstallUtil, this time with the /u option to uninstall it. (instalutil /u timelogger.exe). Then you can build, and then reinstall your service.
Reference
http://arcanecode.wordpress.com/
More Posts
Next page »