Thursday, December 21, 2006

XNA Game Studio Express 1.0 was officially released on December 11, 2006 (get it here).

XNA provides a rich .NET based framework for building games, and supports development using C# and Visual Studio. The games you build with it can then be run on both Windows clients, and XBOX 360 consoles.

You can download the XNA Game studio express 1.0 from http://msdn.microsoft.com/directx/XNA/default.aspx or you can check this independent site -
http://www.xnadevelopment.com/
This is free for download!!!

Explore the tutorials on XNA development www.xnadevelopment.com/ and learn how XNA uses .net Compact framework.
So, if you want some fun this X'mas go ahead and develop some games and impress your friends :)

Cheers- Dipesh

Friday, November 24, 2006

Gotcha - How to add uninstall option in the “User’s Program Menu” for web setup project?

How to add uninstall option in the “User’s Program Menu” for web setup project?

The user doen’st have to go to control panel/add remove programs/ and then choose to uninstall the app, but just go to Start button, navigate to the app and choose uninstall!

Solution -
1. Create simple project UninstallApp.

2. Add in Main(){string[] arguments = Environment.GetCommandLineArgs();foreach(string argument in arguments){string[] parameters = argument.Split('=');if (parameters[0].ToLower() == "/u"){string productCode = parameters[1];string path = Environment.GetFolderPath(Environment.SpecialFolder.System);Process proc = new Process();proc.StartInfo.FileName = string.Concat(path,"\\msiexec.exe");proc.StartInfo.Arguments = string.Concat(" /i ", productCode);proc.Start();}}

3. Create new setup project

4. Add UninstallApp.exe to "Application Folder" in 'File System' part

5. In "User's Program menu" create shortcut to UninstallApp.exe and in properties of this shortcut in parameter 'arguments' insert value "/u=[ProductCode]".

6.Rebuild deployment project.

Thanks to Francisco Jileta and Michael Nielsen for pointing to us on this: http://gaaton.blogspot.com/2006/07/add-uninstall-and-him-shortcut-to-net.html

Hope it helps!

Thursday, October 19, 2006

Microsoft Visual Studio Code Name "Orcas" Community Technology Preview - Development Tools for .NET Framework 3.0

Get the support you need to build .NET Framework 3.0 applications using the final released version of Visual Studio 2005. These tools are provided as an early preview of technology being considered for the Orcas release of Visual Studio. Check here: http://go.microsoft.com/?linkid=5574918

Keep exploring... :)

"IIS 7.0"/ IE 7.0 release much awaited...

* "IIS 7.0" on Vista with VS 2005 ready to be explored. Check its beta box features here: www.microsoft.com/technet/technetmag/issues/2005/11/BetaBox/default.aspx

** Check this excellent talk on "Channel 9" with Scott Guthrie here: Scott Guthrie - Talking ASP.NET and IIS 7.0 http://channel9.msdn.com/ShowPost.aspx?PostID=44084

*** Check out the IIS 7.0 show here: The .NET Show: IIS7.0 (http://msdn.microsoft.com/theshow/episode.aspx?xml=theshow/en/Episode056/manifest.xml )


* IE 7.0 can be explored and downloaded here: www.microsoft.com/windows/ie/downloads/

Thanks - D

Live webcasts free from "Redmond"...

Simon Muzio recently posted a link to free upcoming webcast talks for .NET. These are free webcast presentations that anyone can join over the web. You can find archived versions of past webcast events here: http://www.asp.net/learn/videos/webcasts.aspx?tabid=63

Cheers - D

Sunday, September 17, 2006

2 simple steps to enable notifications from SQL 2005 to ASP.net 2.0

2 simple steps to enable notifications from SQL 2005 to ASP.net. This uses Broker service provided only in SQL 2005. Broker service is not available in SQL 2000.

A> Change the SQLDependency from your DB:table name to CommandNotification
B> And in the Global.asax file under Application_Start event start the SQL Dependancy. That's it!

System.Data.SQLClient.SQLDependancy.Start(ConnectionString)

1> NO POLLING FROM THE ASP.net runtime
2> AVOIDS DATABASE TRIPS UNNECESSARILY
3> SQL SERVER 2005 automatically sends notification whenever there is change in the data (at table level)
4> SILENT communication between SQL engine and .net runtime
5> Performance benefit compared to ASP.net polling

Note: You need to have SQLCacheDependancy enabled = True in web.config file
...




...


Cheers - DJ

Monday, July 17, 2006

Keep Sites Running Smoothly By Avoiding These 10 Common ASP.NET Pitfalls

Straight from msdn magazine:
Keep Sites Running Smoothly By Avoiding These 10 Common ASP.NET Pitfalls -
  1. LoadControl and Output Caching
  2. Sessions and Output Caching
  3. Forms Authentication Ticket Lifetime
  4. View State: The Silent Perf Killer
  5. SQL Server Session State: Another Perf Killer
  6. Uncached Roles
  7. Profile Property Serialization
  8. Thread Pool Saturation
  9. Impersonation and ACL Authorization
  10. Don’t Just Trust It—Profile Your Database!
Check this: http://msdn.microsoft.com/msdnmag/issues/06/07/webappfollies/default.aspx

On Demand webcasts...

http://blogs.msdn.com/bimusings/archive/2005/12/13/503110.aspx

The (un)official guide to SQL Reporting Services 2000 & 2005 interop

Do you need Windows server 2003 for SQL 2005 Reporting services? Yes for Server components, and Windows XP for workstation components. Basically for developement and testing purpose XP should be an ideal bet. You do get a designer after all :)

Check this blog for questions surrounding differences between SQL 2000 and SQL 2005 reporting services: http://blogs.msdn.com/bimusings/archive/2005/12/13/503110.aspx

Thursday, June 15, 2006

Back after a break...

Oh! my god... break again...this time it was a long one! :O No excuse! but it was really a very hectic schedule in more than one ways... but its time to get back to work.


I recently attended 2 day Microsoft Tech Ed session in Mumbai, India... overall good one. Spoke lot about their new products and dozen more which could not make sense to me.,. i am lil dumb may be :)

Anyways what interested me was WinFX track which i attended last day... the presenter spoke lot on WPF, WWF and WCF.

List of new products outlined:
Windows Vista
Windows WorkFlow - not sure if it will be called as .net Framework 3.0
BizTalk 2006
Sharepoint 2007
C# 3.0 / VB 9.0 (not sure when it is going to be released, but plans)
New version of Visual Studio guess code named Orcass
LINQ
Ofcourse along with VS 2005, SQL 2005 and VSTS coming off the market !!!

btw, Did you check the Internet Explorer 7.0 beta copy?
Check this ... http://www.microsoft.com/windows/ie/default.mspx

Cheers - D

Monday, April 24, 2006

ahhhhhhhhhh! long time, i have been missing... my fault...but i will try to be much over this henceforth.

hmmm, so check this Microsoft Certified Architect Program that identifies top industry experts in IT Architecture. These architects can employ multiple technologies to solve business problems and provide business metrics and measurements to describe the success or failure of the projects they drive. The program is currently in beta, and is expected to open to the architect community in early 2006.

http://www.microsoft.com/learning/mcp/architect/default.asp

Also, "Explore the latest posts from architecture bloggers as well...."

http://msdn.microsoft.com/architecture/shareideas/architectureblog/default.aspx

Cheers - D

Thursday, March 30, 2006

Download Free C# Code Snippet Libraries - MSDN

Get the full set of Visual Studio 2005 C# Code Snippets for to have reusable, task-oriented blocks of code you can easily paste into your development projects.
http://msdn.microsoft.com/vstudio/downloads/codesnippets/default.aspx

Monday, March 13, 2006

Sorry, was away on training last week...and the net access over in the training room was not to mention (4 kbps). My modem access is 10 times faster than this... :)
Anyways this week is marked as "Migration week" ... ( moving to > .net .20)

This is the a good start by MS to kick start migration activites:
Upgrading from ASP.NET 1.x

Happy Migrating - DJ :)

Wednesday, March 01, 2006

Next Business pie... Migration projects

Let us start speaking here business... from where do you think we can generate business from this .net 2.0. I see a big pie coming from migration projects.
Migration from VB DNA to .net 2.0 or .net 1.1 to 2.0 (slim chances, i just spent millions developing the app on .net 1.1... and now .net 2.0..ghosh! :) Anyways few enhancements or side by side churning of the pages in asp.net 1.1 and asp.net 2.0 !

Not only Migration from MS technologies, but we must target other areas... such as java to .net 2, Forte to .net 2, .net - SAP, .net - Peoplesoft integration and more.

Let's start the ball rolling and generate few dollars ya... i am tierd :-P
-DJ

Monday, February 27, 2006

Sunday, February 26, 2006

A framework to build rich Web apps on top of ASP.NET 2.0, "Atlas" First Look... Great video

ASP.NET "Atlas" First Look... Great video here...

Nikhil Kothari provides a brief overview of ASP.NET "Atlas", a framework to build rich Web apps on top of ASP.NET 2.0. The demo shows an app that uses the new server controls from the December CTP to incrementally enrich standard ASP.NET pages and an app that shows client-centric app development.

http://msdn.microsoft.com/msdntv/episode.aspx?xml=episodes/en/20060119AtlasNK/manifest.xml

Need Converting a Data-Oriented Application from VB 6 to VB 2005" - Series Part 1-3

Need Converting a Data-Oriented Application from VB 6 to VB 2005" Check this Series out Part 1 to 3...
http://msdn.microsoft.com/library/en-us/dnvs05/html/adotonet.asp

Tuesday, February 21, 2006

User Interface Controls in Visual Basic 6 and Visual Basic 2005

Need to convert VB 6 UI controls to VB 2005. Check this article on msdn by Bill Sempf. Very useful when you think of migrating projects from VB to VB.net 2.0.
http://msdn.microsoft.com/vbrun/default.aspx?pull=/library/en-us/dnvs05/html/UIConVB6and05.asp

Monday, February 20, 2006

Simplify Development With The Declarative Model Of Windows Workflow Foundation

Simplify Development With The Declarative Model Of Windows Workflow Foundation

This article discusses:

  • Windows Workflow Foundation
  • What's inside a workflow Compo
  • site activities and execution
  • Context and state management

https://www.sdmediagroup.com/msdnmag/sub/msdnmagback.htm

Tuesday, February 14, 2006

Wednesday, February 08, 2006

Is .NET 2.0 Gridview more powerful?

Is Data grid obsolete... There's a New Grid in Town...GridView!

Read this article, http://msdn.microsoft.com/msdnmag/issues/04/08/GridView/ it discusses:
  • The ASP.NET 2.0 GridView, FormView, and DetailsView
  • Differences between the DataGrid and the GridView
  • The programming interfaces of these controls
  • How to achieve master/detail views

Happy Programming!

Sunday, February 05, 2006

.NET reverse engineering tools

Interested in finding out whats in a DLL, when you just have a .net DLL and NO source code...

Try Lutz Roeder’s .NET Reflector:

http://www.aisto.com/roeder/dotnet/

OR
http://www.programmersheaven.com/zone28/cat754/19049.htm for .net reverse engineering.
Cheers - D

Thursday, February 02, 2006

Google Maps - AJAX style application

Write AJAX-style Applications Using the ASP.NET 2.0 Client Callback Manager

With applications like Google Maps for inspiration, it seems everybody's been talking about what you can do with AJAX. But many don't know that writing AJAX-style applications that can do partial screen refreshes without a trip to the server are easy to write in ASP.NET 2.0 using the built-in Client Callback Manager.

Check this dex article for details...http://www.devx.com/webdev/Article/28451

Tuesday, January 31, 2006

Take a test...Microsoft .net 2.0 Skills Assessment

Discover What You Know Today...

By completing this Microsoft Skills Assessment, you can receive a Personalized Learning Plan to help you understand if you are ready to implement specific business solutions.
Your Personalized Learning Plan will include the Microsoft Official Curriculum courses, Microsoft Press books, and Microsoft TechNet resources that will help you with your preparation.
Chck this:
http://assessment.learning.microsoft.com/test/home.asp

Microsoft SQL Server 2005
Microsoft Visual Studio 2005
Visual Studio .NET
Desktop Deployment

Sunday, January 29, 2006

Top 10 most popular webcasts by MS

Viewing makes you learn better ... is it? Check out the top 10 most popular webcasts by Microsoft here:
http://www.microsoft.com/events/top10.mspx

Wednesday, January 25, 2006

Wicked Code asp.net 2.0 -- (feature 5/5)

Feature 5: Custom Web Events

PROBLEM:
How easy it is to create our own Custom Web Events in .net 2.0?

SOLUTION:
http://msdn.microsoft.com/library/en-us/dnvs05/html/custwebcon.asp
http://www.asp.net/QuickStart/aspnet/doc/monitoring/webevents.aspx

Analyze this code:-
using System;
using System.Web.Management;
using System;using System.Web;
using System.Web.Management;

public partial class WebEvent_aspx
{
void Button1_Click (object sender, EventArgs e)
{
MyWebEvent mwe = new MyWebEvent ("Click!", null, 100001, DateTime.Now); WebBaseEvent.Raise (mwe);
}
}


public class MyWebEvent : WebBaseEvent
{
DateTime _time;

public MyWebEvent (string message, object source, int eventCode, DateTime time) : base (message, source, eventCode)
{ _time = time; }

public override void FormatCustomEventDetails( WebEventFormatter formatter)
{ formatter.AppendLine ("Button clicked at " +_time.ToString()); }
}

Sunday, January 22, 2006

Wicked Code asp.net 2.0 -- (feature 4/5)

Feature 4: Custom Expression Builders

How to create our own Custom Expression Builders ?

SOLUTION:
using System;
using System.Web.UI;
using System.Web.Compilation;
using System.CodeDom;

public class VersionExpressionBuilder : ExpressionBuilder
{
public override CodeExpression GetCodeExpressionBoundPropertyEntry entry, object parsedData, ExpressionBuilderContext context)
{
string param = entry.Expression;
if (String.Compare(param, "All", true) == 0)
return new CodePrimitiveExpression
(String.Format("{0}.{1}.{2}.{3}", Environment.Version.Major,Environment.Version.Minor, Environment.Version.Build,Environment.Version.Revision));

else if (String.Compare(param, "MajorMinor", true) == 0)
return new CodePrimitiveExpression
(String.Format("{0}.{1}", Environment.Version.Major, Environment.Version.Minor));
else throw new InvalidOperationException
("Use $ Version:All or $ Version:MajorMinor"); }}





Thursday, January 19, 2006

Wicked Code asp.net 2.0 -- (feature 3/5)

Feature 3: Auto Culture Handling

PROBLEM: How do we handle localization in our web sites...?

SOLUTION:
Let's look first at ASP .net 1.x:-

void Application_BeginRequest (Object sender, EventArgs e)
{
try
{
if (Request.UserLanguages.Length > 0)
{
CultureInfo ci = CultureInfo.CreateSpecificCulture(
Request.UserLanguages[0]);
Thread.CurrentThread.CurrentCulture = ci;
Thread.CurrentThread.CurrentUICulture = ci;
}
}
catch (ArgumentException)
{
// Do nothing if CreateSpecificCulture fails
}
}

ASP.net 2.0 (almost no code....) [Auto culture]:-

<%@ Page Culture="auto" UICulture="auto" Language="C#" CompileWith="AutoCulture.aspx.cs" ClassName="AutoCulture_aspx" %>

Obviously, there's more to localizing an entire Web site than simply enabling auto-culture handling. Auto-culture handling does not, for example, localize static Web site content. But ASP.NET 2.0 offers other new localization features as well, including the new tag for localizing static content and $ Resources expressions for loading localization resources declaratively.

Monday, January 16, 2006

Wicked Code asp.net 2.0 -- (feature 2/5)

Feature 2:
Encrypted Configuration Sections

PROBLEM:
Developers are concerned about how to securely store sensitive information in config files like web.config without spending too much time/effort?

SOLUTION:
Did you know that you can encrypt sections of Web.config to prevent connection strings and other potentially injurious data from being stored in plaintext?

ASP.NET also offers you a choice of two encryption modes. One uses triple-DES encryption with a randomly generated key protected by RSA; the other encryption mode uses triple-DES encryption as implemented by the Windows® Data Protection API (DPAPI). You can add support for other encryption techniques by plugging in new data protection providers.

One call to ConfigurationSection.ProtectSection is sufficient to encrypt a configuration section; a subsequent call to ConfigurationSection.UnProtectSection decrypts it. Following a successful call to either method, you call Configuration.Update to write changes to disk.

Sunday, January 15, 2006

Wicked Code asp.net 2.0 (new key features in -- 1/5)

We will disuss 5 key features in this asp.net 2.0 series, which i think will be really helpful from the developer's perspective... These features implementation literally takes half the time, then it used to take in .net 1.1. Check it out yourself. Please feel free to comment on this if you hold any apprehensions....

Feature 1:
Updating Browser Displays in (Almost) Real Time

Problem: Developers used to find it real difficult to meet client requirements (banking, stock exchange) for instant refresh of the data (usually in data grid display) and still NOT have the performance hit. Since there was an HTTP postback to the server involved here, how good you code did not matter, and there was always a lil performance hit.

Solution (.net 2.0): XML-HTTP callbacks
Did you realize that the new ASP.NET 2.0 client callback manager provides an elegant solution to the problem of keeping browser displays in sync with constantly changing data on the server?

XML-HTTP callbacks enable browsers to make calls to Web servers without performing full-blown postbacks. The benefits are numerous. XML-HTTP callbacks transmit less data over the wire, thereby using bandwidth more efficiently. XML-HTTP callbacks don't cause the page to flicker because they don't cause the browser to discard the page as postbacks do. Furthermore, XML-HTTP callbacks execute less code on the server because ASP.NET short-circuits the request so that it executes the minimum amount of code necessary. Inside an XML-HTTP callback, for example, a page's Render method isn't called, significantly reducing the time required to process the request on the server.

The scenario generally involves an ASP.NET Web page displaying data that's continually updated on the server. The goal is to create a coupling between the browser and the Web server so that when the data changes on the server, it's automatically updated on the client, too.


Thursday, January 12, 2006

AJAX...Bridging the Thin-Client Performance Gap

AJAX ... is the way to go !
Does .net 2.0 supports this in a very efficent way?
Check the gridview controls...use XMLHttpRequest for asynchronous data retrieval with the web server. Avoid postbacks...

Read this small article to have broader know how on AJAX (Ironspeed)
http://www.ironspeed.com/articles/ajax-bridging%20the%20thin-client%20performance%20gap/article.aspx

Wednesday, January 11, 2006

ASP.NET "Whidbey" PDC Presentations

Great place to look for PDC presentations:

http://www.asp.net/whidbey/pdc.aspx?tabindex=0&tabid=1

You can download slides, demos as well.
Have fun learning !

“Target” chain of stores selects Microsoft .net 2.0 ...

“Target” chain of stores selects Microsoft Technologies for its 1,400 Retail Stores throughout the U.S. Adoption of the Microsoft .NET Framework 2.0.
“Migration the way to go….”


http://www.microsoft.com/presspass/press/2006/jan06/01-10MSTargetPR.mspx (press release)

"Microsoft Dynamics CRM 3.0..." Woody Driggs | Accenture

"Microsoft Dynamics(TM) CRM 3.0 provides a new alternative for enterprises running Microsoft Office applications," said Woody Driggs, managing director of the CRM Service Line at Accenture. "For those organizations, this new offering can provide them with the familiarity, ease of use and integration options they've been seeking from their CRM solution, and we look forward to serving their needs jointly with Avanade, one of the leading enterprise partners for Microsoft CRM." ….
Check these links for more details:
http://news.moneycentral.msn.com/ticker/article.asp?Symbol=US:MSFT&Feed=PR&Date=20051206&ID=5329545

http://www.prnewswire.co.uk/cgi/news/release?id=159807

http://www.microsoft.com/dynamics/crm/default.mspx