Wednesday, November 14, 2012

My Top 8 picks for Microsoft.NET Architects (ASP.NET MVC)

Past few month was very hectic for me, now since I have some time for myself I am sharing the list of articles which I am going through, these articles are basically related to architecting .NET application using ASP.NET MVC. I hope you will find these links useful for you too.

  1. Of course not to mention GoF Design Pattern Tutorial: http://www.dofactory.com/Patterns/Patterns.aspx
  2. On the same line as above, this link elaborates the patterns by GoF as Illustrated GOF Design Patterns in C# Part I: Creational: (Series Article)http://www.codeproject.com/Articles/3130/Illustrated-GOF-Design-Patterns-in-C-Part-I-Creati
  3. A N-Tier Architecture Sample with ASP.NET MVC3, WCF, and Entity Framework : http://www.codeproject.com/Articles/434282/A-N-Tier-Architecture-Sample-with-ASP-NET-MVC3-WCF
  4. Design pattern – Inversion of control and Dependency injection by By Shivprasad Koirala: http://www.codeproject.com/Articles/29271/Design-pattern-Inversion-of-control-and-Dependency
  5. LINQ and WF Based Custom Profile Provider for ASP.NET 3.5, this article demonstrates Microsoft Provider Pattern using Workflow Foundation: http://www.codeproject.com/Articles/31308/LINQ-and-WF-Based-Custom-Profile-Provider-for-ASP
  6. patterns & practices Application Architecture Guide 2.0, Microsoft Link from where you can download free eBook, Microsoft Application Architecture Guide – by J.D. Meier, Alex Homer, David Hill, Jason Taylor, Prashant Bansode, Lonnie Wall, Rob Boucher Jr, Akshay Bogawat : http://apparchguide.codeplex.com/ or direct Link to download the eBook: Download the final release in PDF on MSDN, either you can download the pdf from this link or you can read the same book online at the link: http://msdn.microsoft.com/en-us/library/dd673617.aspx
  7. Architecture Guide: ASP.NET MVC Framework + N-tier + Entity Framework and Many More : http://www.codeproject.com/Articles/70061/Architecture-Guide-ASP-NET-MVC-Framework-N-tier-En
  8. Security is the most important aspect of any application specially when you are dealing with financial intuitions, even the best of the architecture is good-for-nothing if is is not secure. This is the link of top 10 Security vulnerabilities provided by Open Web Application Security Project, a non-profit charitable organization and elaborated with solution by Troy Hunt: OWASP Top 10 for .NET developers part 1: Injection : (Series Article) http://www.troyhunt.com/2010/05/owasp-top-10-for-net-developers-part-1.html , same is available for download as pdf eBook from  : http://asafaweb.com/OWASP%20Top%2010%20for%20.NET%20developers.pdf

This list is open for comments, so go ahead and suggest me if you have good links which I can add to my top 8 and in the same line. Thanks.

Monday, November 12, 2012

Free Microsoft Learning Events by Microsoft Learning Partners

Click on the link below to find some of the third-party events where you can learn about Microsoft technologies.

http://www.microsoft.com/learning/en/us/community/events.aspx

Microsoft Tech Showcase: Technology events hosted by Microsoft Learning Partners

You can search events based on your technology, country, City/Province, Online/In Person events, From Date, To Date and name of the partners. These events will help you to boost your careers, learn new technologies, etc all free of cost.

Tuesday, November 6, 2012

Programming in HTML5 with JavaScript and CSS3 (70-480) Free Examination Voucher

Programming in HTML5 with JavaScript and CSS3. It's your chance to assess your skills, validate your knowledge, and prove your HTML5 chops. More importantly, it's your first step toward earning our industry's first and only certification for HTML5 expertise: Microsoft Certified Solutions Developer (MCSD). MCSD certification is proof positive to employers and peers that your code skills are second to none.

How to take free examination

Go to www.register.prometric.com and follow the steps to schedule Exam 70-480: Programming in HTML5 with JavaScript and CSS3 at a testing centre near you.

Use the voucher code HTMLJMP to get the free exam. Pass, and you'll be well on your way to joining the community of elite MCSD developers.

Developing HTML5 Apps Jump Start Free Online Course

Go to http://www.microsoftvirtualacademy.com/tracks/developing-html5-apps-jump-start and enroll in the JumpStart online course, which covers HTML5 development using JavaScript and CSS3, and sharpens your Windows app development skills.

Download free eBook (Programming Windows 8 Apps with HTML, CSS and JavaScript)

Debugging .NET code using Devices(iPad/iPhone) and Fiddler

While working on programs which are targeted for devices (mobile, tablets, etc) we often face a situation where we feel that just device simulators are not enough I wish if I could run my programs in debug mode using the physical device. And this scenario often arises because personally I too faced a scenario where I was able to run my website on the simulator without any issues but the same was not working as expected on the physical device.

So in this post I am going to show you how to debug the .NET codes using apple iPhone or iPad. To do this  you

  • First need to configure Desktop or Laptop computer where you are running your .NET code
  • Second Configure Devices iPhone or iPad

There are few perquisites which are required

  1. Of course a apple (iPhone or iPad) device which can be used to debug the codes, you can also use Andriod phones but ad hoc connections are not supported by default on Andriod phone.
  2. WiFi enabled on your PC with administrator privileges, you can either enable you Internet connection sharing on WiFi network or created a ad hoc network, details of which I am going to mention later.
  3. If you are going for ad hoc network you may need a proxy server installed on your PC, here I am going to use Fiddler, you can download from here: http://www.fiddler2.com/fiddler2/version.asp
  4. Visual Studio installed, I am going to use Visual Studio 2012 in this article, but this post holds good for any version of Visual Studio as long as it can support debugging.

In this post I am going to show connecting using iPhone/ iPad using ad hoc network using my Fiddler.

Now lets get started step by step starting from configuring my system to configuring the phone device.

Creating a ad hoc network

  1. Open Network and Sharing Centre (Control Panel\All Control Panel Items\Network and Sharing Center).
  2. Go to Manage wireless network –> Add, this will open a Popup screen where either you can Manually create a network profile or you can Create an ad hoc network

image

3. Once you get the following screen, you can enter the name of the ad hoc network of your choice, select WEP as Security type, give the Security key and select the checkbox to Save the network, as given in the screen below.

image

Now you system is almost ready to accept incoming connection through the wireless network devices, just make sure your wireless is turned on, go to the taskbar network icon and open the window, this will display the newly created ad hoc network by you as Waiting for users. 

image

Now since your network is ready to accept incoming connections I am going to set up my proxy server where I am going to use Fiddler. To configure Fiddler open the fiddler in your system, Go to Tools –> Fiddler Options –> Navigate to Connections Tab select the check boxes as given in the screenshot below and leave the port as default 8888 if not already in use in your system, this can be changed as required.

image

Now since your system is ready for device connection, the only thing left is configuring your device. To configure your device follow the following steps.

In your iPhone or iPad first go to Cellular Data settings this is applicable if you are using your network provider internet connection. Once you open this Cellular Data tab in your device, disable the cellular data as given in the screen below..

iPadDeviceiPhoneDevice1

Now its time to configure your Network Settings in iPad and iPhone

iPadDevice3

iPhoneDevice2iPhoneDevice3

In the screen above you have to configure your device to use Static IP Address, with the IP Address which should be in the same network address and subnet address. You just need to give some unused class D address which should be different from your system to which this is connecting. You can check your system IP Address of Wireless LAN adapter using ipconfig command in command prompt. This IP address will be the IP Address of the device (iPad/iPhone).

Now go to the HTTP Proxy settings on the same page below of device network settings, select the proxy settings as Manual. In the Server you have to enter the correct IP Address of the wireless LAN adapter of your system (Desktop/Laptop), enter the port which was configured on Fiddler as given in the fiddler settings above.

Once you have completed these settings your device is also ready to connect to the System. Once connected you can see the status as connected instead of Waiting for users in ad hoc network.

Now once everything looks fine, you can go ahead and first run the application in debug mode in your system, once your application opens in the web browser you can get the URL address on which your application is ready for debug. As per my convenience I have used a MVC application for debugging, but you can use any other types of web application also.

iPad1

Enter the Same URL (http://localhost:35510/) in your device. I have kept a line of code which gives me the UserAgent from where the request is coming from.

string userAgent = HttpContext.Request.UserAgent;

Following are the screens which I get in iPad and iPhone respectively

iPhoneDevice4   iPadDevice2 

Now if I go and set the breakpoint in the code, I can see the user agent which clearly shows the requested client user agent.

iPhone2Laptop

iPad2Laptop

In the above two screens you can see the user agent browser as Mozilla/5.0 (iPhone…) and Mozilla/5.0 (iPad…) for iPhone and iPad respectively.

Note: IP addresses are used in this article are just for illustration only, this is not directly or indirectly related to any existing IP address used anywhere in existence.

Hope this helps.

Friday, November 2, 2012

Visual Studio 2012 Team Foundation Service

Almost most of us who work in our personal systems often face challenges when it comes to learn something on Team Foundation Server, because the biggest challenges we face is setting up the environment, acquiring the server license, configuring the environment, setting up the client applications, etc.

So we have to depend on our office environment where we can learn something on TFS. But still we have limited privileges and we cannot experiment with so many uncovered features which we had always wished for while learning through books or website or MSDN.

Ok, having said all these let me give you some good news, Visual Studio has launched much awaited Cloud based Team Foundation Server Service for Visual Studio, Eclipse, Xcode environments with the following brilliant features and top of those free to learn, experiment and of-course for business too.

  • Team Collaboration and Agile Planning,
    • Built-in task board
    • Backlog management
    • Capacity planning
    • Issue and Bug tracking
    • Integrated feedback requests
    • Storyboarding with Microsoft PowerPoint
  • Build, Test, Deploy
    • Track build health over time
    • Continuous delivery to Azure
  • Cloud powered source code management
    • Code reviews
    • Code merging for check-in conflicts
    • Context management preserves your focus

and much more…

with no infrastructure required to manage, accessible from anywhere, supporting almost all the languages and platforms.

image

And the icing on the cake is this is Free to use, you just need to signup using this link https://tfs.visualstudio.com/

Once you sign-up for Team foundation service has got all the required resources to help you to learn the TFS features and offerings. Team Foundation Service getting started guide will help you to learn almost everything you need to know about this service like:

  • Connect to TFS (using Visual Studio, Eclipse, and Xcode)
  • Uploading your code
  • Check files in and out
  • Get your Code Reviewed using TFS environment
  • Creating and running a unit test manually or automatically with local builds
  • Using other unit test frameworks
  • Use Git and VS with TFS

Free plan of TFS will cover the following features

image

For additional users, pricing you can visit the following links for other service plans you may have to wait till 2013.

Happy Learning !!!