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