Perfil de ambatiProgramming Myself.. Amb...FotosBlogListasMás Herramientas Ayuda

Blog


31 julio

What is Attitude??

For the last so many days I am thinking very seriously about my personality development.
Some events happened in my career beginning.
R they becoming hurdle for my development?
Thats Y I am trying to take inputs from people who are self balanced.
 
When I worked in Knowledge Infotech my HR regularly uses this word: "Attitude"
I thought that it is one of the reason they will show to reduce ur hikes.
But nowadays I am understanding the inner meaning of it and I could able to sense of it.
 
Its really a good word which will play a good role in one's development.
28 julio

vs2005 WebProject model vs website model

 
 
Common Gotcha: Slow VS 2005 Web Site Build Performance Because of “Dueling Assembly References”   
 
-------
how to use the new project type, the Web application project, as an alternative to the Web site project model already available in Visual Studio 2005.
Introduction

The Web Application Projects add-in provides a Visual Studio 2005 Web project model option that works like the Visual Studio .NET 2003 Web project model. In this paper, the new project type is referred to as a Web application project. You can use Web application projects as an alternative to the Web site project model already available in Visual Studio 2005, which we refer to in this paper as Web site projects.

Purpose of Web Application Projects

The goal of Web application projects is to address some of the feedback we have heard from customers. Some developers find migrating Visual Studio .NET 2003 applications to the new Web site model in Visual Studio 2005 impractical, especially because precompiling (publishing) a Visual Studio 2005 Web site creates multiple assemblies.

The new Web application project type also enables some scenarios where Visual Studio 2005 Web projects are different than in the previous version of Visual Studio. For example, the new model has different semantics for Web subprojects where the subproject is not an ASP.NET or IIS application, but instead feeds its generated assembly to a parent application's Bin folder.

The new project type also provides a model that will feel familiar to developers who do not want to change how they structure their Web projects from how they use Visual Studio .NET 2003 today—for example, they want to continue to use a project file.

The new Web application project type does not replace the Web site project type introduced in Visual Studio 2005, which provides many new features and additional flexibility in how you manage Web applications. Instead, it is an alternative project type that you might choose depending on your requirements and your preferred development workflow. Some developers will find the default Visual Studio 2005 Web site project model natural and easy to use. Other developers will prefer a model in which project resources are defined explicitly (rather than implicitly by simply being in a folder) and in which they have tighter control over their project, and will therefore choose the new Web application project model. Rather than forcing developers to use just one project model, we will support both project models and allow developers to choose whichever Web project model works best for them.

Note   Web application projects do not work with Visual Web Developer Express Edition.

In This Paper

This paper describes Web application projects and offers information on when you might choose between a Web application project and a Web site project model in Visual Studio 2005. The paper also walks you through the following common scenarios:

  • Creating a new Web application project in Visual Studio 2005.
  • Migrating an existing Visual Studio .NET 2003 project to a Visual Studio 2005 Web application project.

In addition, an appendix lists known issues with Web application projects.

Installing Web Application Projects

Adding Web application projects to Visual Studio 2005 requires you to install both an update and an add-in to Visual Studio 2005. The two installations perform the following tasks:

Early versions of Web application projects (V1 and V2 previews) were released in December 2005 and February 2006. The most recent version adds support for generating code to represent server controls and for converting projects directly from Visual Studio .NET 2003 to Web application projects in Visual Studio 2005.

Comparing Web Site Projects and Web Application Projects

The new Web application project model provides the same Web project semantics as Visual Studio .NET 2003 Web projects. This includes a structure based on project files and a build model where all code in the project is compiled into a single assembly. However, the new project type makes available all the new features of Visual Studio 2005 (refactoring, class diagrams, test development, generics, and so on) and of ASP.NET 2.0 (master pages, data controls, membership and login, role management, Web Parts, personalization, site navigation, themes, and so on).

The Web application project model in Visual Studio 2005 also removes two requirements from Visual Studio .NET 2003:

  • Using FrontPage Server Extensions (FPSE). These are no longer required, but they are supported if your site already uses them.
  • Using a local copy of IIS. The new project type supports both IIS and the built-in ASP.NET Development Server.

The following two tables describe the differences between Web application projects and Web site projects. The first table highlights various scenarios and tasks and suggests which model is best suited to that task. The second table describes in more detail the behavioral differences between each model. Use the tables to guide you in selecting which model to select.

The following table lists Web project options or tasks and indicates which project model best implements those options.

Option or Task Web Application Projects Web Site Projects
Need to migrate large Visual Studio .NET 2003 applications X  
Prefer single-page code model to code-behind model   X
Prefer dynamic compilation and working on pages without building entire site on each page view (that is, save file and then simply refresh the page in the browser).   X
Need to control names of output assemblies X  
Need to generate one assembly for each page   X
Need stand-alone classes to reference page and user control classes X  
Need to build a Web application using multiple Web projects X  
Need to add pre-build and post-build steps during compilation X  
Want to open and edit any directory as a Web project without creating a project file   X

The following table helps you select a project type by describing some of the key differences between Web application projects and Web site projects.

Scenario Web Application Project Web Site Project
Project definition Similar to Visual Studio .NET 2003. Only files that are referenced in the project file are part of the project, are displayed in Solution Explorer, and are compiled during a build. Because there is a project file, some scenarios are more easily enabled:

You can subdivide one ASP.NET application into multiple Visual Studio projects.

You can easily exclude files from the project and from source code-control.

Web site projects use the folder structure to define the contents of the project. There is no project file and all files in the folder are part of the project.

This project type is desirable if you have an existing folder structure representing an ASP.NET application that you want to edit in Visual Studio without having to explicitly create a project file.

Compilation and build outputs The compilation model for Web application projects is very similar to that in Visual Studio .NET 2003.

All code-behind class files and stand-alone class files in the project are compiled into a single assembly, which is placed in the Bin folder. Because this is a single assembly, you can specify attributes such as assembly name and version, as well as the location of the output assembly.

Certain other applications scenarios are better enabled, such as the Model-View-Controller (MVC) pattern, because they allow stand-alone classes in the project to reference page and user control classes.

The Build command compiles Web site projects only to test them. To run Web site projects, you deploy source files and rely on ASP.NET dynamic compilation to compile pages and classes in the application.

Alternatively, you can precompile the site for performance, which uses the same compilation semantics as ASP.NET dynamic compilation. The ASP.NET dynamic compilation system has two modes—batch mode (the default) and fixed-names mode. In batch mode, many assemblies (typically one per folder) are produced when precompiling the site. In fixed mode, one assembly is produced for each page or user control in the Web site.

Iterative development To run and debug pages, you must build the entire Web project. Building the entire Web application project is usually fast, because Visual Studio employs an incremental build model that builds only the files that have changed. You can configure build options Visual Studio 2005 for when you run the site: build the site, an individual page, or nothing at all. In the last case, when you run a Web site, Visual Studio simply launches the browser and passes to it the current or start page. The request then invokes ASP.NET dynamic compilation.

Because pages are compiled dynamically and compiled into different assemblies as needed, it is not required that the entire project compile successfully in order to run and debug a page.

By default, Visual Studio completely compiles Web site projects whenever you run or debug any page. This is done to identify compile-time errors anywhere in the site. However, a complete site build can significantly slow down the iterative development process, so it is generally recommended that you change the build project option to compile only the current page on run or debug.

Deployment Because all class files are compiled into a single assembly, only that assembly needs to be deployed, along with the .aspx and .ascx files and other static content files.

In this model, .aspx files are not compiled until they are run in the browser. However, when used with Web Deployment Projects (a downloadable add-in to Visual Studio 2005), the .aspx files can also be compiled and included in a single assembly for deployment.

Each time you deploy the single assembly produced in this model, you replace the code for all pages in the project.

Both .aspx files and code-behind files can be compiled into assemblies using the Publish Website command in Visual Studio. (Note that the Build command does not create a deployable set of assemblies.) The updateable publish option supports compiling only code-behind files while leaving .aspx files unchanged for deployment.

The default mode for precompiling produces several assemblies in the Bin folder, typically one per folder. The fixed-names option produces one assembly per page or user control and can be used to create deployable versions of individual pages. However, the fixed-names option increases the number of assemblies and can result in increased memory usage.

Upgrade from Visual Studio .NET 2003 Because the Web application project model is the same as in the Visual Studio .NET 2003, upgrade is generally simple and will usually not require any restructuring of the application. The compilation option for Web site projects is significantly different than Visual Studio .NET 2003. A conversion wizard is available to upgrade existing Visual Studio .NET 2003 Web projects to Web site projects. For any reasonably complex Visual Studio .NET 2003 projects, manual fix-up is usually required after the conversion. For most scenarios, it is preferable to upgrade existing Visual Studio .NET 2003 projects to Web application projects in Visual Studio 2005.

Scenario 1: Creating a New Web Application Project

This section walks you through creating a new Web application project. It also examines how page code is handled in a Visual Studio 2005 Web application project.

Note   Web application projects do not work with Visual Web Developer Express Edition.

The examples shown here are in C#. The steps for working with Visual Basic are very similar, but file names and code will differ slightly.

Step 1: Create a New Project

To start, create a new Web application project. In Visual Studio, from the File menu, click New Project, displays the New Project dialog box.

Note   To create a Web application project, you do not choose the New Web Site command, as you do to create a Web site project. Instead, you choose the New Project command.

Under Project types, open the Visual C# or Visual Basic node, and then under Visual Studio installed templates, click ASP.NET Web Application:

Figure 1. Creating a new Web Application Project

Name the project and specify a location. When you click OK, Visual Studio creates and opens a new Web project with a single page named Default.aspx, an AssemblyInfo.cs file (.vb file), and a Web.config file:

Figure 2. New Web application project

This list of project files, references, compilation information, and other metadata is stored in the project file, which is created in whatever location you specify in the New Project dialog box.

There are two class files (.cs files or .vb files) associated with the Default.aspx page. The Default.cs file (.vb file) contains the page class where you put your code and event handlers. The Default.aspx.designer.cs file (.vb file) is a new file used in Web application projects to contain the code that is generated and maintained by Visual Studio for the page. Both files contain a partial class. During compilation, the files are combined into a single code-behind class.

Step 2: Open and Edit the Page

Open the Default.aspx file and copy the following markup into it, which defines several ASP.NET server controls:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="WebApplication3._Default" %>

<html>
<head runat="server">
    <title>My Visual Studio 2005 Web Application Project Test</title>
</head>
<body>
  <form id="form1" runat="server">
    <div>
    
        <h1>My Visual Studio 2005 Web Application Project Test</h1>
        <h3>Pick a date: </h3>
        <asp:Calendar ID="Calendar1" runat="server" 
             BorderColor="#999999" DayNameFormat="Shortest" 
             Font-Names="Verdana">
          <SelectedDayStyle BackColor="#666666" 
             Font-Bold="True" ForeColor="White" />
          <TodayDayStyle BackColor="#CCCCCC" ForeColor="Black" />
          <SelectorStyle BackColor="#CCCCCC" />
          <WeekendDayStyle BackColor="#FFFFCC" />
          <OtherMonthDayStyle ForeColor="#808080" />
          <NextPrevStyle VerticalAlign="Bottom" />
          <DayHeaderStyle BackColor="#CCCCCC" Font-Bold="True" 
             Font-Size="7pt" />
           <TitleStyle BackColor="#999999" BorderColor="Black" 
             Font-Bold="True" />
        </asp:Calendar>
        <br />
        <div>
          <asp:Label ID="Label1" runat="server" Text="Label"/>
        </div>
    </div>
  </form>
</body>
</html>

In a Web application project, the Default.aspx.designer.cs file is automatically updated when you add or remove controls in the Default.aspx file. The following snippet shows what the Default.aspx.designer.cs file looks like after you add the preceding markup:

namespace WebApplication3 
{
    public partial class _Default 
    {
        protected System.Web.UI.HtmlControls.HtmlForm form1;
        protected System.Web.UI.WebControls.Calendar Calendar1;
        protected System.Web.UI.WebControls.Label Label1;
    }
}

The Default.aspx.designer.cs file contains a control declaration for each server control in the .aspx (or .ascx) file. By default, the controls are declared as protected. You can open the .designer.cs file and change a field's accessor to public if you want to access the variable from outside of its class.

Note   It is not recommended that you set the accessibility of control declarations to public, because it is a better to use a property to change the accessibility of a server control variable. However, editing the access modifier for server variables in the designer file is supported for backward compatibility with Visual Studio .NET 2003 Web projects that used this coding technique.

In Web application projects, code generation for server controls is improved over the Visual Studio .NET 2003 experience in two important ways:

  • You no longer have to switch the page to Design view to update the control declarations. The designer monitors both Design view and Source view and updates declarations appropriately.
  • Control declarations in the base class of a page are honored and are not duplicated in a page's code-behind class.

Because the .designer.cs file is automatically updated with the control declarations, you can go directly to the Default.aspx.cs code-behind class file and program any of the controls on the page, as in the following example:

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

namespace WebApplication3 {

    public partial class _Default : System.Web.UI.Page {

        protected void Page_Load(object sender, EventArgs e) {
            Label1.Text = "Current date: " + Calendar1.SelectedDate;
        }
    }
}

Step 3: Build and Run the Project

Run the project in debug mode by pressing F5 or clicking Run in the Debug menu. By default, Web application projects use the built-in ASP.NET Development Server using a random port as the root site (for example, the site's URL might be http://localhost:12345/):

Figure 3. Running a Web application project

When you build Web application projects, all code-behind classes, stand-alone class files, and embedded resources are compiled into a single assembly that is placed in the project's Bin folder.

You can change the output location if you want to—for example, to build the project into a parent application directory. Typically, you set the build location when you have multiple subprojects in subfolders of a single ASP.NET application. Select the properties of the project to set the build location, as shown in the following screenshot:

Figure 4. Setting output build location

After building the project, you can examine the results. In Solution Explorer, click Show All Files:

Figure 5. Results of building a Web application project

This works the same as it does in Visual Studio .NET 2003 ASP.NET Web projects.

Setting Build and Deployment Properties for Web Application Projects

ASP.NET Web application projects use the same configuration settings and behaviors as Visual Studio 2005 class-library projects. You can access these configuration settings by right-clicking the project name in Solution Explorer and selecting Properties. This displays the project properties editor. You can use the editor to change properties such as the name of the generated assembly, the build compilation settings for the project, its references, its resource string values, and code-signing settings:

Figure 6. Changing properties of a Web application project

ASP.NET Web application projects add a tab named Web to the project properties list. You can use this tab to configure how a Web project is run and debugged. By default, ASP.NET Web application projects are configured to launch and run using the built-in ASP.NET Development Server on a random HTTP port on the machine. The following screenshots show using the ASP.NET Development Server: the Taskbar icon, and a page in the browser where you can see the server's URL in the Address box.

Figure 7. Taskbar icon for ASP.NET Development Server

Figure 8. Running a Web application project using the ASP.NET Development Server

You can change the port number if the selected port is already in use or if you want to run the Web project on a specific port:

Figure 9. Changing the port used by the ASP.NET Development Server

Alternatively, Visual Studio can run and debug the Web application using IIS. To use IIS, select Use IIS Web Server and enter the URL of the Web application:

Figure 10. Configuring a Web application project to use IIS

Note   ASP.NET Web application projects do not automatically create an IIS virtual root or application for you. To create the virtual directory and application in IIS, click the Create Virtual Directory button next to the Url box.

When you run the application, Visual Studio compiles the project into a single assembly, which follows the build semantics of Visual Studio .NET 2003 Web projects. When the application is running, Visual Studio attaches a debugger to the Web server process.

All project settings are saved in a standard MSBuild project file.

Customizing Deployment Options for Web Application Projects

After creating a Web application project, you can optionally use a Visual Studio 2005 Web Deployment project to set deployment options for the Web application project.

Note   Web Deployment Projects is available as a Visual Studio 2005 add-in. You can download the add-in from the Visual Studio 2005 Web Deployment Projects page on the ASP.NET Developer Center.

Web application projects compile all code into a single assembly, so you do not need a Visual Studio 2005 Web Deployment project to combine assemblies. However, Web Deployment projects provide additional support for precompiling the .aspx content of a project, as well as for making post-build changes to the published configuration. Using the latest build of the Web Deployment project add-in, you will be able to do add these features for both Visual Studio 2005 Web site projects and Visual Studio 2005 Web application projects.

Scenario 2: Migrating a Visual Studio .NET 2003 Web Project to a Web Application Project

This section walks you through the process of converting an existing Visual Studio .NET 2003 Web project to a Web application project in Visual Studio 2005. The Web application project model uses the same conceptual approach as a Web project in Visual Studio .NET 2003, including a project file to include and exclude files, compilation to a single assembly, and so on. In general, Web application projects do not require any architectural changes after the conversion.

As in the preceding section, this section assumes that you are working in C#. The steps for working with Visual Basic are very similar, but file names and some of the code will differ.

Step 1: Install the Visual Studio 2005 Web Application Project Preview

Be sure you have installed Web Application Projects in Visual Studio 2005 by following the steps in the Installing Web Application Projects section earlier in this paper.

Step 2: Back Up Your Visual Studio .NET 2003 Projects

Make absolutely sure to save a backup of your Visual Studio .NET 2003 Web projects and solutions before attempting any migration. The following steps have been tested using the preview version of Web Application Projects. However, there could still be issues, and you might need to restore the Visual Studio .NET 2003 solution.

Step 3: Open and Verify your Visual Studio .NET 2003 Web Project

Before migrating a project, open your existing Visual Studio .NET 2003 solution, compile it, and then run it. Spending a few minutes to verify that everything works before you migrate can save trouble later, especially if the cause of errors is a last-minute directory change or similar.

Step 4: Migrate the Solution to Visual Studio 2005

Close the solution in Visual Studio .NET 2003, and then start Visual Studio 2005. On the File menu, click Open File, and then browse to the .sln file for the solution you want to migrate. This launches the Visual Studio 2005 Conversion wizard:

Figure 11. Visual Studio 2005 conversion wizard

Click Next to proceed through the wizard, accepting all defaults. Visual Studio 2005 will convert the solution and its contained project files to use the MSBuild format, which is the new project file format in Visual Studio 2005.

As part of the migration, Visual Studio 2005 generates an XML-based log file that provides a summary of the conversion process, flagging any issues encountered during migration. By default, the conversion log file is saved in the same directory as the .sln file. If you have issues later when compiling the project, you might need to refer back to the conversion log file.

Step 5: Verify in Visual Studio 2005

After the solution and project files are upgraded to Visual Studio 2005 format, validate that your application builds without errors and runs as expected. At this point, the most common errors or warnings will be of these types:

  • Conflicts with names in introduced in the .NET Framework version 2.0.
  • Warnings about using obsolete members.

To fix naming conflicts, you can either fully qualify existing names with a namespace to remove ambiguity, or rename the members so they do not conflict.

If you see a warning about using obsolete members, the warning message will usually suggest alternative APIs to use. In these cases, you can continue to use the obsolete members in the 2.0 version of the .NET Framework. However, the members will be removed in the next major release of the .NET Framework, so it is a good practice to remove the members and substitute the suggested alternatives.

When running your Web application, you might see an error that says "Directory Listing Denied" that suggests that a virtual directory does not allow its contents to be listed. If you see this error message, do the following:

  1. Close the browser.
  2. In Solution Explorer, right-click the application's start page and then click Set as Start Page to ensure that the correct page is invoked when the application runs.
  3. Run the application again.

Step 6: Covert Code-Behind Classes to Partial Classes

As noted earlier, in Visual Studio 2005, Web application projects use partial classes to store designer-generated code. These classes are stored in a separate file from the code-behind file. By default, the Visual Studio 2005 Web project conversion wizard does not create a *.designer.cs (or *.designer.vb) file for Web pages (.aspx files) or user controls (.ascx files). Instead, the code will look and work just like it did in Visual Studio .NET 2003.

Note   The wizard makes the minimum number of changes to the code files during migration to help ensure a smooth conversion to Web application projects in Visual Studio 2005.

You can keep your code in this format. If you do, you must manually update the control field declarations in the code-behind files, but everything else will work fine in Visual Studio 2005.

To take advantage of the editor's ability to maintain field declarations in generated code, you should update your pages and controls to use the partial-class model introduced in ASP.NET 2.0. Partial classes make it easier to organize the generated code and custom code for your code-behind files. For more information on .designer.cs files, see Scenario 1: Creating a New Web Application Project earlier in this paper.

To migrate your code to use partial-class model, first make sure that your code compiles without errors. Then in Solution Explorer, right-click the project name and click Convert to Web Application. This command iterates through each page and user control in the project, moves all control declarations to a .designer.cs file, and adds event handler declarations to the server-control markup in the .aspx and .ascx files.

Note   Another option is to use the Convert to Web Application command on individual pages. You might do this first on a few pages if you want to watch closely the changes made for each page before applying the change to the entire application.

Figure 12. Converting a single page to Web application project format

When the process has finished, check the Task List window to see if any conversion errors are reported. If the task list displays errors, right-click the relevant page in Solution Explorer and choose View Code and View Code Gen File to examine the code and fix problems. Note that errors and warnings that appear in the Task List window persist between Visual Studio sessions. After you have fixed errors listed in the window, you can clear items from the task list.

Note   The Convert to Web Application command cannot be undone in Visual Studio. The best method for reverting the changes is to restore from a backup of the Visual Studio .NET 2003 project, and then to re-run the Visual Studio 2005 migration as described in Step 4 above.

Now recompile your project to ensure it compiles without errors. A possible source of errors is if you have modified the control declarations in a code-behind class and the conversion wizard mishandles your changes.

From this point, when you add new pages into your Web project, they will by default use the partial-class template.

Step 7: Examine and Resolve XHTML Compliance Issues

By default, Visual Studio 2005 generates and validates XHTML-compliant markup. This helps you build Web applications that are standards compliant and helps minimize issues with browser-specific rendering. Visual Studio .NET 2003 did not generate XHTML-compliant markup, so you might see validation and rendering issues with pages created in Visual Studio .NET 2003.

Note   Validation errors are informational only and are flagged as warnings. Validation errors do not prevent a page from running.

If you do not want to see validation errors, switch the HTML validation setting from XHTML Transitional to Internet Explorer 6.0 (which was the Visual Studio .NET 2003 default setting). In the Tools menu, click Options. In the Options dialog box, open the Text Editor node, then the HTML node, and then the Validation node. In the Target list, select Internet Explorer 6.0, and then unselect the Show Errors check box. Note that this does not fix XHTML validation errors; it simply switches the validation schema to one that is more compatible with the way markup was generated by Visual Studio .NET 2003, and it suppresses validation warnings.

Figure 13. Configuring HTML validation

You can also add the following section to your project's Web.config file, which causes ASP.NET to render legacy (non-XHTML compliant) markup from server controls:

<system.Web>

<xhtmlConformance mode="Legacy" />

</system.Web>

This will avoid the slight rendering differences you might see between pages displayed using ASP.NET 1.1 and using ASP.NET 2.0. For more information, see ASP.NET and XHTML in the MSDN Library.

The Future of Web Application Projects

Web application projects provide a compilation and build model very similar to the one used in Visual Studio .NET 2003. Depending on their requirements, some users will find the new Web site project option in Visual Studio 2005 more appropriate for their applications, while other users will prefer the Web application project option. Web application projects provide the best path for upgrading existing Visual Studio .NET 2003 applications to Visual Studio 2005, and are highly recommended for that scenario.

We want to emphasize these important points about the future of Visual Studio 2005 Web application projects:

  • Going forward, we will fully support both the Visual Studio 2005 Web site project model and Visual Studio 2005 Web application project model. You can choose whichever model works best for you.
  • In future versions of Visual Studio, the Web application project model will be built in, and both the Web application project model and Web site project model will be supported.

Appendix A: Known Issues

This appendix lists known issues with Web application projects.

Issue 1: Data Scenarios

  • There are known issues when using data-bound controls and SQL Server 2005 Express with the April 2006 release of Web application projects. For a list of issues and workarounds, see the whitepaper named "Using Data-Bound Controls and SQL Server Express with Web Application Projects," which is available on the Visual Studio 2005 Web Application Projects page on the ASP.NET Developer Center.

Issue 2: Visual Basic Inline Code Might Not Be Converted Correctly

When you upgrade a Visual Studio .NET 2003 project to Visual Studio 2005, Visual Basic code in single-file Web pages (.aspx files) or user controls (.ascx files) is not converted to use the new Visual Basic 2005 syntax. This can lead to compile time errors when building your converted Web project. You will need to manually fix these errors and recompile the affected pages. Visual Basic code in code-behind files is converted and should compile correctly.

Issue 3: WSE and Web Application Projects

Web Services Enhancements (WSE) is an add-in to Visual Studio 2005 that provides the latest advanced Web services capabilities. When Web Application Projects is installed, the WSE configuration command on the shortcut menu in Solution Explorer will not work correctly. As a workaround, follow these steps to use the stand-alone WSE 3.0 configuration tool instead:

  1. Start the configuration tool. In the Windows Start menu, click All Programs, click Microsoft WSE 3.0, and then click Configuration Tool.
  2. In the configuration tool, in the File menu, click Open.
  3. Select the Web.config file for the project.

Issue 4: Converting the Club Web Site Starter Kit (Visual Basic)

(This issue applies only when using Visual Basic.) When converting the Visual Basic version of the Club Web Site starter kit to a Web application project, you will see a run-time error similar to the following:

Server Error in '/' Application.
Compiler Error Message: BC30451: Name 'truncate' is not declared.
Source Error: 
Line 129: <asp:Label ID="Label2" runat="server" Text='<%# truncate(CStr(Eval("description"))) %>' />
Source File: C:\vs05\328\test-club1\wap1\Default.aspx    Line: 129

To resolve the error, you must add a namespace. You can do this for individual pages or for the project as a whole. Assuming your project namespace is "wap1", follow these steps.

To add a namespace to an individual page:

  1. Open the page.
  2. Under the last @ Register directive, add an @ Import directive that references the namespace you want to use, as in the following example:
    <%@ Register TagPrefix="Club" Namespace="wap1.Clubsite" Assembly="wap1">
    <%@ Import Namespace="wap1" %>

To add a namespace to the project:

  1. Open the Web.config file.
  2. Add or edit the <namespaces> element as a child of the <pages> element, as in the following example:
    <pages>
      <namespaces>
        <add namespace="wap1"/>
      </namespaces>
    </pages>

Issue 5: Converting the Personal Web Site Starter Kit (Visual Basic)

(This issue applies only when using Visual Basic.) When converting the Visual Basic version of the Personal Web Site starter kit to a Web application project, you will see a run-time error similar to the following:

Server Error in '/' Application
The type specified in the TypeName property of ObjectDataSource 'ObjectDataSource1' could not be found

To resolve the error, you must add the project namespace to the TypeName property. Assuming your project namespace is "wap1", follow these steps.

  1. Open the Member_List.aspx page.
  2. Change the type name in the ObjectDataSource declaration to be fully qualified, as in the following example:
    <asp:ObjectDataSource TypeName="wap1.MemberDetails" >

Issue 6: Converting a Visual Studio 2005 Web Site project to a Web Application Project

This paper will be updated in the future to show the steps needed to convert a Visual Studio 2005 Web site project to a Web application project. In the meantime, see the entry, Tutorial 8: Migrating from VS 2005 Web Site Projects to be a VS 2005 Web Application Projects on Scott Guthrie's blog.

 
 

Communication between two forms

How to communicate between two winforms.

This is very simple one.But I use to do the same mistake.So I am putting this one in my blog.

I am having Form1 where I am having a button.On click of button second form opens which contains two textboxes and a button.We have to get the values that I entered in the textboxes of the second form into first form.That is our problem.

Below is the solution:

Form1.cs code

============

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

Form2 f2 = new Form2();

f2.ShowDialog();

MessageBox.Show(f2.Firstname);

MessageBox.Show(f2.Lastname);

}

}

Form2.cs code

============

public partial class Form2 : Form

{

private string _firstname;

public string Firstname

{

get

{

return _firstname;

}

set

{

_firstname =

value;

}

}

private string _lastname;

public string Lastname

{

get

{

return _lastname;

}

set

{

_lastname =

value;

}

}

public Form2()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

this._firstname = textBox1.Text;

this._lastname = textBox2.Text;

this.Close();

}

}

26 julio

World From My Eye

I will tell about my experience with this world in this post.
 
We met different kinds of people in our life.
 
The topics here are:
 
About my life after BTech:
 
In Aug 2003 went to Chennai for doing my Mtech Computer Science in a private engineering college.
I joined in Zitt Technologies as a network engineer,Chennai in Dec 2003.They have not given salary for almost 9 months.Worked in some webprojects apart from Networking.
 
I joined in Knowledge Infotech as a software trainee in Aug 2004.Got my first earning ie Rs. 2650.
Left KI in Jul 2005 as the management asked me to choose either Mtech or job.
 
Then I joined in V-Empower Solutions in Aug 2005 as a programmer analyst for Rs.6000
Completed my Mtech in Feb 2006.
Then I joined in Caritor in May 2nd 2006 as a senior software engineer.
Cant able to stay with the politics there.
So left Caritor in Feb 2007 and joined in Proteans in March 20th 2007.
 
Expectations of a software girl from a software guy:
                  
                    A kerala girl
       And abt the expectations of a s/w girl, as every girl she will also be expecting a loving and caring guy with whom she can share her feelings.
I think u guys will also be expecting the same thing..

As u know, in s/w industry we have lots of tensions in our day-to-day life.

Apart from that when she comes back from office, she has to  manage her house also.

So, she will be expecting full support from your side..

She will be ready to accept u as u are, to hear ur problems, console u..

Similarly, she too will be expecting the same from u..

U can help her in kitchen sometimes.., listen to her problems in office...

I have heard that men are very bad in remembering birthdays, anniversaries etc.

Try to surprise her by some gifts during b'days,wedding anniversaries etc.

And also, some people don't like to send their wife to job after marriage.

But this may be discussed between them and decided.

I think in today's world we can't live only with one person's salary.

And abt the bad habits of men, I don't like people who smoke or drink..

I think this may be the opinion of every women.

Most of the men say, to supress their tensions or to celebrate their happiness they r drinking..

But do we people (I mean girls) have that option..Wht r we doing when we have tensions?

u should think like that..

some people say they r social drinkers..but soon they may become addicted to drinking..

and it will destroy the whole family life...

also, smoking n drinking will affect their health also..

every woman wants their husband to live long...

this is how woman thinks...

This is all abt my opinion...

Tell me ur comments on this...

Also, I would like to know guys expectations..


A Konkini girl
I think if you are talkin from a software engineer perspective, a girl who is an sw engg would expect to be understood and would want lots of support from her partner. Because she would be travelling with one leg on one boat and second on another trying to balance. As a guy, the guy should understand that she is going through the same amount of tension and pressure wat he is going thro and be supportive of her, when she sometimes cannot balance time.

I know i am telling too much philosophy. This is from my point if view because i have been bought up by my parents like dat. Some gals are different. Some boys will agree to me, some wont. If somebody does not agree to my point of view, i would expect that guy to marry to gal who is a house wife not a working gal, because once marriage is done ... then u cant repair things,


Same for the gal if she feels she cannot balance or her partner may not be supportive she should move on to a job which is less stressful or leave the job, or in the first place select somebody who treats her equally. Because i feel family life is as important as career.
 
Tamil Girl
Myself
I want to make a happy life. Then I got this doubt.
So please tell me the answer.

Girl
In what perspective you want the answer - friend or .....
Myself
Ok. Give me in the viewpoint of both (friend and lover)
I told you right I want to make my life happy.
 
Girl
for friend the expectation would be understanding,dependable when in need, very decent
for lover apart from the above the main thing is she has to feel that u r the best choice for her life,settled....
she has to feel that u r the best choice for her life,settled.... “
Myself
How to make her life settled???
Is it related to money ?(be frank)
Girl
settled is a separate category that is for the guys.......
what i meant was the guy should be financially settled to such an extent that they can live a decent life
Now decide yourself.

 

Different types of Colleagues:
Different types of Project Managers:
About Passive money:
   Last Sunday ie 29/7/2007 I send a mail regarding earning passive money.
   The content is :

Yesterday I went to a session. But this is not a technical session.

About Money Management.(How to make money that too  passive money?)

 

I am writing my experience here.

I never came to a conclusion without doing some initial study.

I believe it and my friends and my colleagues will trust me this.

I am telling about this company “RMP Infotech Private Limited,Chennai”

This is the biggest binary plan MLM company in India. This is as well a ISO2001 Company in India.
1. It sells REAL products not websites  2. Pays every weeks.

 

I heard about this binary plan MLM groups from other sessions.

But I was not satisfied with them.

 

When I am working in V-Empower, Hyderabad I heard about Amway products and attended the session.

The same concept .We have to buy a Amway product and we have to bring two members (one left and one right) and they have to buy the product. So for a pair we will get some commission. Our left and right members have to brought their left and right members. We will get some more commission.It continues.

 

Last year also in Bangalore I attended one more session. One of my Caritor colleague introduced that session.

Same concept But here we have to buy some old gold coins from the company (Quest International)

 

But I thought it wont really suite us.

It is difficult to convince our left and right members.

The products are not that much attractive.

 

But here in RMP we have to buy products like Bazaz Life Insurance ,Bike,Cell phones at the market place only. So we can convince easily.

 

This is a passive income.

And it is completely legal.

It’s a team effort. Not an individual effort.

If we are busy also or not interested we are not losing anything.

Y becoz the products are with us.

Lets say if we took Bazaz life insurance we can show that as a IT deduction proof and the money also with us.

So no problems.

 

See. Just check it yourself.

What we are doing daily.?

If we want money we have to work.We have to perform well by doing adjustments.

We will lose some personal life too.

If you are performing well you will get money.

But for anybody there will be a limit as time is limited one.

Depending upon ur performance u will earn.

Ur future will be decided by the management and not by u.

If u r not satisfied you have to leave the company and again u have to prove.

Everybody will be having 24 hrs  a day. That is a constant one. You cant earn more than that.That is active income.

Think for ways for getting passive income.

R we really concentrating on the dreams we have in our life?

 

And that too r u expecting the same software boom will be there forever.

No way.

Just think about ur seniors who r 2000- 2002 passed out.

Nobody has taken Computer Engg seat in Andhra during that time.

My seniors worked  as lecturers for 2k. Very brilliant guys. But no oppurtunities.

Now we r getting projects.If not wat will be the case?

Will management retain all the employees?

Will the management think that: ”This person has done a great job for our company.He spend more time for the development of company”

Here nobody is exceptional.

Yes people may say:” I am having knowledge,I am a good technical guy.I wont bother these things”

Knowledge is power but not money.

When I started my career I was impressed by the guys who are doing coding excellently.

In these 3+ yrs I met and worked with some more people.

I found so many good techies.

Now I believe that so many good techies are there in this world around us.

We are just a drop in this ocean of knowledge.

We should have trust on the companies and the work we r doing.

At the same time we have to build ourself.

I am not asking you to join and attend the  RMP sessions.

I like the way they r thinking and approaching the world.

But I am asking you all to change the way we are earning money.

Y cant we put our effort for our own development?

Y cant we become a successful entrepreneur?

When we will come out of this serving for others concept?

Always being happy with salary.

Having a good life and a family , a home , a beautiful wife , a lovely kid etc.

Everybody is achieving this.

What is the speciality in this.

This is routine life. There should be some purpose for this life.

Can’t we establish a team which can do more than this?

Can’t we become another Narayana Murthy?

 

This mail is for people who

are positive

are having guts

can face challenges

dare to dream

are innovative

are willing to work with teams

are honest

have trust and confidence

 

Yesterday  Praveen took me to SJR college where the session was conducted.

The auditorium was heavily crowded.Nearly 1000 people came.

Though I reached home at 11:30 but I felt very happy.

Thanks Praveen.

May be I will sit with Kamal to think about passive income.

 

I got different comments from different people.

 Mostly 45% showed interest in making passive money

 25%  contradicted this.

30% are in dilemma like me.

My ambitions in life:
If God appears before me:
                     I will request God to remove the dowry system.
                     Remove the Caste and regional feelings.
Conclusion:
 
Sreedhar Ambati
 

24 julio

ClickOnce technology

 

ClickOnce Deployment

The previous example showed a simple installation that can be done easily. However, if you

want to change the application in any way, you must move the application to each workstation

if it’s installed on multiple workstations. Also, you must include the DLL files that represent the

custom activities created in Chapter 8. In the past, this has been the issue with most Windows

based applications. Windows-based applications can have a rich user interface, but have been

difficult to deploy. To correct this, Microsoft created the ClickOnce deployment technology

and included it with VS2005.

ClickOnce deployment allows you to create a package that can be installed from a Web site

that installs the application on the client. This could also be done in earlier versions of VS. What

makes ClickOnce special is it allows you, as the developer, to set the package to look for updates.

Using the update option on a ClickOnce package as a developer, you can make an update to

the application and publish it. When the user of the application executes the application the

next time, the package will recognize there’s an update and ask the user to install it. This instal-

lation doesn’t require administrator permissions on the workstation. The only exception to

this is if the application has a prerequisite that isn’t installed on the workstation. For example,

the PurchaseOrderReceivedCheck application has a prerequisite of the .NET Framework 3. If a

workstation doesn’t have the .NET Framework 3 installed, an administrator must install it first.

This architecture allows users to install an application to their desktop from a Web site, and

when updates are available, the updates are delivered to their desktop automatically. For more

information about ClickOnce deployment, see an article I’ve written entitled “ClickOnce

Deployment with VS 2005” for the Web site ASPToday (

http://www.ASPToday.com).

Deploying a project with ClickOnce is easy. You can create the application as you normally

would. Changes need to be made when the application is ready to be installed. Open the Solution

Explorer and double-click My Project. This opens the project properties window. Click the

Publish tab on the left side. The Publish screen looks like Figure 9-1.

 

 

The publishing location is where you want the users to access the application to install it.

any updates also will be installed to this location. This doesn’t need to be a Web site, but that’s

the easiest for users to access. You can see mine is my local Web server, and a folder called

publishconsoleApplication1. You have two choices of how the user will access the applica-

tion: either online only or offline. If the application is available offline, it will be installed to the

workstation, and a shortcut will be provided in the Start menu. You can also control the version

of the publication. Each version must be unique for the update to be installed. You can configure

how updates are received by clicking the Updates button. The Application Updates dialog

appears, as in Figure 9-2.

 

 

The first choice you must make is whether updates are even to be made available. You can

use ClickOnce installation as an easier method of application installation without even using

the update features by unchecking the check box “The application should check for updates.”

Obviously, to allow the application to get updates, make sure this box is checked.

Once you’ve decided to allow updates for the application, you must choose when the

application checks for those updates. You can choose “After the application starts” or “Before

the application starts.” If you choose “After the application starts,” the checking and down-

loading of the update is done in the background while the application works. The next time the

user executes the application, the update will be available. If you choose “Before the applica-

tion starts,” the checking occurs when the user executes the application. The update is then

installed prior to the application executing, and the latest version is shown to the user. You can

also specify that all instances of this application must use a specific version of the application.

This is a way to force the updates to be installed. For this application, leave the default, “Before

the application starts” and click OK.

After choosing the updates, click the Publish Now button. This begins the process of

publishing the application to the location identified. You can follow the progress of the publishing

by looking at the status in the bottom-left corner of the project properties window. When the

publishing is completed, the status will be Publish Succeeded. Also, when the publishing is

completed, a Web browser will appear with the deployment page. The deployment page has

the application name, the version, and an Install button, as shown in Figure 9-3. Click the

Install button and install the application. Immediately after installing the application, the

application will be executed.

 

 

 

To demonstrate how the updates work, add a Code activity to the

ConsoleApplication1 .Change the code in the Consoleapplication .Publish the application again. This constitutes an update to the application. When the

Web browser appears at the end of the publishing just close it; don’t install from the Web

browser. Instead, click the Start menu and find the publishconsoleApplication1 application

in the Start menu and click it. You receive a message that an update is available, and you’re

asked if you want to install the update. Click OK. Once you click OK, the update is installed and

the application is executed. The necessary e-mails are sent, and the message box with “I’m

here” appears. This shows that the update was installed and is being used. As you can see, the

ClickOnce technology provides an easier way to install and update Windows applications than

in the past.

 

You can see this article in http://www.codeproject.com/useritems/Use_ClickOnce_Deployment.asp

  

23 julio

Pivot operator

The PIVOT Operator

In my next few posts, I'm going to look at how SQL Server implements the PIVOT and UNPIVOT operators.  Let's begin with the PIVOT operator.  The PIVOT operator takes a normalized table and transforms it into a new table where the columns of the new table are derived from the values in the original table.  For example, suppose we want to store annual sales data by employee.  We might create a schema such as the following:

CREATE TABLE Sales (EmpId INT, Yr INT, EmpSales MONEY)

INSERT

Sales VALUES(1, 2005, 12000)

INSERT

Sales VALUES(1, 2006, 18000)

INSERT

Sales VALUES(1, 2007, 25000)

INSERT

Sales VALUES(2, 2005, 15000)

INSERT

Sales VALUES(2, 2006, 6000)

INSERT

Sales VALUES(3, 2006, 20000)

INSERT

Sales VALUES(3, 2007, 24000)

Notice that this schema has one row per employee per year.  Moreover, notice that in the sample data employees 2 and 3 only have sales data for two of the three years worth of data.  Now suppose that we'd like to transform this data into a table that has one row per employee with all three years of sales data in each row.  We can achieve this conversion very easily using PIVOT:

SELECT

EmpId, [2005], [2006], [2007]

FROM

(SELECT EmpId, Yr, EmpSales FROM Sales) AS s

PIVOT

(SUM(EmpSales) FOR Yr IN ([2005], [2006], [2007])) AS p

I'm not going to delve into the PIVOT syntax which is already documented in Books Online.  Suffice it to say that this statement sums up the sales for each employee for each of the specified years and outputs one row per employee.  The resulting output is:

EmpId       2005                  2006                  2007
----------- --------------------- --------------------- ---------------------
1           12000.00              18000.00              25000.00
2           15000.00              6000.00               NULL
3           NULL                  20000.00              24000.00

Notice that SQL Server inserts NULLs for the missing sales data for employees 2 and 3.

The SUM keyword (or some other aggregate) is required.  If the Sales table includes multiple rows for a particular employee for a particular year, PIVOT does aggregate them - in this case by summing them -  into a single data point in the result.  Of course, in this example, since the entry in each "cell" of the output table is the result of summing a single input row, we could just as easily have used another aggregate such as MIN or MAX.  I've used SUM since it is more intuitive.

This PIVOT example is reversible.  The information in the output table can be used to reconstruct the original input table using an UNPIVOT operation (which I will cover in a later post).  However, not all PIVOT operations are reversible.  To be reversible, a PIVOT operation must meet the following criteria:

  • All of the input data must be transformed. If we include a filter of any kind including on the IN clause, some data may be omitted from the PIVOT result. For example, if we altered the above example only to output sales for 2006 and 2007, clearly we could not reconstruct the 2005 sales data from the result.
  • Each cell in the output table must derive from a single input row. If multiple input rows are aggregated into a single cell, there is no way to reconstruct the original input rows.
  • The aggregate function must be an identity function (when used on a single input row). SUM, MIN, MAX, and AVG all return the single input value unchanged and, thus, can be reversed. COUNT does not return its input value unchanged and, thus, cannot be reversed.

Here is an example of a non-reversible PIVOT operation.  This example, calculates the total sales for all employees for all three years.  It does not itemize the output by employee.

SELECT

[2005], [2006], [2007]

FROM

(SELECT Yr, EmpSales FROM Sales) AS s

PIVOT

(SUM(EmpSales) FOR Yr IN ([2005], [2006], [2007])) AS p

Here is the output.  Each cell represents the sum of two or three rows from the input table.

2005                  2006                  2007
--------------------- --------------------- ---------------------
27000.00              44000.00              49000.00
 

Read the followng posts from Craig on reading the Execution Plan for these two new operators introduced with SQL Server 2005.

PIVOT Execution Plan

UNPIVOT Execution Plan

Indian Mvp blogs

 
 
Indian MVP Bloggers
 
 
 
 
Anand M
Geetesh Bajaj
Ajay Singala
M Rajesh
Deepak Vasudevan
Rajiv R
M Vinod Kumar
Sudhakar
 
Ravikanth
Vadivel
Suresh Behera
Aman Garg
Saurabh Verma
Roshan James (MS)
Manoj G
Pooja Malpani (MS)
Praveen Srivatsava (RD)
Abhishek Kant (MVP Lead)
Nishant
Ajay
Dr. U B Pavanaja
Vishal Joshi (MS)
Ramaprasad Upadhyaya
Mohammed Athif Khaleel
Pooran Prasad R
Hima Bindu Vejella
Nishith Pathak
Praveen N Nair
Sujay V Sarma
 

CTRL +ALT +END in remote system

 
 use CTRL +ALT +END in remote system in order to lock only remote system.
 

Disable rightclick with javascript

 
<html>
<head>
<script language = "javascript">
function Disable() {
if (event.button == 2)
{
alert("This action is not possible")
}
}
document.onmousedown=Disable;
</script>
</head>
<body>
</body>
</html>
20 julio

Commitment to software development

(Got from Prakash jothi)

An interesting post from Jason’s Blog which talks about a pledge which will allow people like us to publicly pledge our commitment to software development.

 

“I believe that the software I help to create defines me as a professional, and speaks volumes about my capability as a software developer, and my commitment to the profession of software development.”

 

ü  I care that the software I help to create is useful and usable

ü  I care that the software I create is simple and elegant

ü  I care that the software I help to create is reliable and robust

ü  I care that the software I help to create is responsive and scalable

ü  I care that the software I help to create can be extended and maintained

ü  I care that the software I help to create can be safely reused

ü  I care that the software I help to create is economical

ü  I care that the software I help to create is ready when it's needed

ü  I care that the people I work with also care about software as passionately as I do

 

As someone who cares passionately about software, I will always:

·         Look for ways to achieve higher value with greater economy in my work

·         Champion those practices which lead to higher value with greater economy in the wider software development community

·         Enthusiastically contribute to software development research, knowledge-sharing and debate with others who care as passionately as I do

·         Defend my core beliefs against poor practices, be they born out of ignorance or the special interests of people and organizations who evidently do not care about software as passionately as I do

·         Offer moral and practical support to those who care as much as I do to help them do the right thing

 

Original URL:

http://parlezuml.com/blog/?postid=448

 

Ant and Grosshopper

 (From Kamal)

OLD VERSION...

The ant works hard in the withering heat all long building his house and
laying up supplies for the winter. The grasshopper thinks the ant is a
fool and laughs & dances & plays the summer away. Come winter, the ant
is warm and well fed. The grasshopper has no food or shelter so he dies
out in the cold.

MODERN VERSION...
The ant works hard in the withering heat all summer long, building his
house and laying up supplies for the winter. The grasshopper thinks the
ant's a fool and laughs & dances & plays the summer away. Come winter,
the shivering grasshopper calls a press conference and demands to know why the ant should be allowed to be warm and well fed while others are
cold and starving.

NDTV, BBC, CNN show up to provide pictures of the shivering grasshopper
next to a video of the ant in his comfortable home with a table filled
with food. The World is stunned by the sharp contrast. How can this be
that this poor grasshopper is allowed to suffer so? Arundhati Roy stages
a demonstration in front of the ant's house.
 Medha Patkar goes on a fast along with other grasshoppers demandingthat grasshoppers be relocated to warmer climates during winter. Amnesty International and Koffi Annan criticize the Indian Government for not upholding the fundamental rights of the grasshopper. The Internet is flooded with online petitions seeking support to the grasshopper (many promising Heaven and Everlasting Peace for prompt support as against the wrath of God for non-compliance) . Opposition MP's stage a walkout. Left parties call for "Bharat Bandh" in West Bengal and Kerala demanding a Judicial Enquiry. CPM in Kerala immediately passes a law preventing Ants from working hard in theheat so as to bring about equality of poverty among ants and grasshoppers. Lalu Prasad allocates one free coach to Grasshoppers on all Indian Railway Trains, aptly named as the `Grasshopper Rath'.Finally, the Judicial Committee drafts the "Prevention of Terrorism Against Grasshoppers Act [POTAGA]", with
effect from the beginning of the winter. Arjun Singh makes Special
Reservation for Grass Hopper in educational Institutions & in Govt
offices. The ant is fined for failing to comply with POTAGA and, having nothing left to pay his retroactive taxes, his home is confiscated by the Government and handed over to the grasshopper in a ceremony covered by NDTV. Arundhati Roy calls it "a triumph of justice". Lalu calls it `Socialistic Justice'. CPM calls it the `revolutionary resurgence of the downtrodden' Koffi Annan invites the grasshopper to address the UN General Assembly. Many years later... The ant has since migrated to the US and set up a multi billion dollar company in Silicon Valley. 100s of grasshoppers still die of starvation despite reservation somewhere in India... As a result loosing lot of hard working ants and feeding the grasshoppers, India is still a developing country....

19 julio

General

Introducing Microsoft Windows Workflow Foundation: An Early Look

http://msdn2.microsoft.com/En-US/library/aa480215.aspx

 

Simplify Development With The Declarative Model Of Windows Workflow Foundation

http://msdn.microsoft.com/msdnmag/issues/06/01/WindowsWorkflowFoundation/

 

 Hosting WF Workflow Designer in a Web Application

http://blogs.msdn.com/moustafa/archive/2007/01/06/hosting-windows-workflow-designer-in-web-application.aspx

 

Screen capture tool

 

http://www.jingproject.com/

 

Try the above link, its generates swf files, and best part is its free.

 

Delegates

http://sellsbrothers.com/writing/default.aspx?content=delegates.htm

 

History of CRM

The below discussion is about  the categories of CRM,supported and rival companies to Microsoft CRM and features in CRM4.0 Titan.

 

CRM applications fall into two distinct categories depending on the method used to deliver the application to users.

The first category is hosted CRM applications, also known as on-demand” applications. Some examples include Salesforce.com and Salesnet.

This type of CRM application is hosted on a central server and provided as a service to multiple businesses and other organisations that require CRM capabilities. The advantage of on-demand applications is that businesses don’t need to worry about maintaining their own servers and software -- they can simply access their CRM application through the Web. Another advantage to on-demand CRM is that there is no client software to install and configure, as anyone with a Web browser and an Internet connection can access the application.

The second category of CRM applications is the installed application,

where an application server is installed on servers maintained by businesses or organisations. Access to this application is provided either through a Web interface -- so users can interact with the application using their Web browser -- or through a “fat client” application that is installed locally on each user’s PC. Examples of installed CRM applications include Act!, GoldMine, etc.

Installing an application server or client software locally has a number of advantages, most notably the fact that you have complete control over how the product is deployed and configured, including the ability to customise the application to suit your own purposes.

And for installed applications that can be accessed through a Web browser, there is little or no setup required on the client side to get the application up and running. Fat-client CRM applications provide more ways to integrate with desktop applications (like Microsoft Office, etc) and as a rule provide a richer user interface than Web-based applications. The downside, however, is a client-based application needs to be installed for every user.

-------------------

ePartners: (Telephony Integration for Microsoft CRM and Intertel) (Supporter)

ePartners’ Telephony Manager combines Microsoft’s powerful CRM and the Inter-Tel Axxess® Converged Platform to help organizations communicate more effectively, build customer loyalty and generate revenue.

- Easily initiate, manage and track telephone conversations directly from MSCRM, including: outbound dialing, holding, recording and sharing conversations.
- Enhance call center efficiency with Telephony Manager’s robust transfer and teleconferencing solution—directly connect customers to available agents and teams.
- Instantly retrieve customer information and open MSCRM leads, cases, or opportunities with incoming call matching and screen-pop features.
- Dramatically improve customer and prospect call tracking in MSCRM with extensive call history functionality.
Increase customer loyalty and satisfaction by continuously sharing account information across the organization.

Navsite(Supporter)

As a Microsoft Gold Certified Partner and one of the first to offer Hosted Microsoft Dynamics solutions, NaviSite has years of experience in delivering solutions based on the Microsoft Dynamics suite.  It is well known for its ability to provide highly available, end-to-end Application Management services for Microsoft Dynamics customers.

It has expertise across Microsoft Dynamics' entire product suite and have hosted and managed solutions for Microsoft Dynamics CRM (formerly Microsoft CRM), Microsoft Dynamics GP (formerly Microsoft Great Plains), Microsoft Dynamics SL, Microsoft Dynamics AX (formerly Microsoft Axapta) and Microsoft Dynamics NAV (formerly Microsoft Navision), as well as additional Microsoft products such as Microsoft Commerce Server and Microsoft Exchange.  These solutions span a broad range of business areas, including Financial Management, Human Resource Management, Manufacturing, Supply Chain Management, eCommerce, Messaging and other areas.

Salesforce (Rival)

Its CEO Benioff said in a statement: "We have competed against [Microsoft] in the CRM market since 2002 and they have failed to deliver a competitive product. They just cancelled version two of that legacy application and skipped ahead to three. In the meantime, we are on the 18th generation of our service. Customers are tired of waiting for Microsoft to innovate."

Dynamics consists of the existing Axapta, Navision, Great Plains and Solomon products that Microsoft is attempting to unify on a single code base under Project Green.

RightNow(Rival)

It has a strong Web focus, with tools that you can integrate into your existing Web site. In addition, RightNow has a stronger toolset for managing support incidents and providing self-service options to customers. It acquires Salesnet in SaaS CRM space

Microsoft CRM features an easy-to-use interface and a tight integration with Outlook, which should cut down on training costs.

            Refer http://www.zdnet.com.au/reviews/software/productivity/soa/CRM-Microsoft-3-0-vs-RightNow/0,139023447,139247032,00.htm

Microsoft always delays in release of its products.It happened for CRM also.Microsoft has decided to skip its long-delayed Microsoft CRM 2.0 release and jump right to Version 3.0

Microsoft CRM 4.0  called as  Titan

 The three main design themes of the Microsoft CRM Titan release will be:

                   Multi-tenancy (handling multiple Microsoft CRM deployments on a single server)

                   Multi-language (supporting multiple languages in a single deployment)

                   Even tighter integration with Microsoft Office 2007

 

Features we think are likely to be incorporated into the release include:

Bulk import of more entities.

Export of data, to resolve up poor quality data issues, then easy re-importation of data back into CRM.

Dedupe will work on data entry with option to use code optimisation. ie.. CRM could prompt for possible contact working for same company with Names Fred Smith and Fred Smyth.

In this release the whole product is going to be built on the new .NET 3.0 platform and the older C technology components will be replaced..

‘On events’ are improved.

Ajax (Asynchronous JavaScript and XML) which is web development technique used for creating interactive web applications is hoped to be supported. This should allow faster update many of the CRM screens.

More many to many relationships supported. (Currently out of the box only company to company and company to contact are supported. If you want more you need to purchase an add-on.)

You will be have to have more than one relationship between the same two entities.

Mail merge will be significantly improved and now go to a new screen which will list both Word or CRM templates.

Titan will enable you to use Pop 3 e-mail accounts and no longer mandate use of Exchange Server.

There will be an Exchange Router to allow you to interface to other e-mail servers.

CRM 4.0 Customers will be able to access the software from Microsoft's Office Outlook, via a Web browser or a variety of mobile devices.

CRM 4.0 will have the support for end user dashboards

Microsoft CRM 4.0 will be available in 24 languages.

CRM SBE will be released at the same time as Titian. Currently not sure as to what version of Small Business Server it will run on.

patterns and practices guidance site

http://www.pnpguidance.net/

The Tampa Roadshow was a great event. Thank you for all that attended. The event was sold out, the questions were challenging, and the participation by the crowd was awesome!

Join new and experienced Microsoft winform and web developers for a day long FREE Developer Event covering Enterprise Library and Software Factories from Microsoft Patterns and Practices. Learn to increase developer productivity and application quality using Enterprise Library building blocks, code generation, and proven practices for Smart / Mobile Clients, Web Clients, and Web Services.

Learn how to:

·         Use Enterprise Library to increase productivity and solve common development problems involving data access, logging, exception handling, security, encryption, and validation.

·         Understand concepts and benefits behind the four Software Factories, including an overview of how you can extend the factories and build your own guidance packages.

·         Develop web client applications faster and using proven practices like N-Layer Architecture, View-Presenter Pattern, Dependency Injection, Unit Testing, and Service Locators.

·         Create composite smart client desktop and mobile applications quickly and efficiently, applying proven development best practices and code patterns.

·         Build ASMX web services endpoints (.NET v2) that scale to enterprise use, and provide a built-in migration path to WCF (.NET v3) through a layered architecture and naming conventions.

http://www.pnpguidance.net/Downloads.aspx

 

Quotes

Prakash J blog

 

Teamwork ultimately comes down to practicing a small set of principles over a long period of time.

Success is not a matter of mastering subtle, sophisticated theory, but rather of embracing common sense with uncommon levels of discipline and persistence.

 

Teams succeed because they are human. By acknowledging the imperfections of their humanity, members of teams overcome the natural tendencies that make trust, conflict, commitment, accountability, and a focus on results so elusive.

 

From the book “The Five Dysfunctions of a Team” (Patrick Lencioni)

------------------

Sendhil Thought of the day

Develop good work habits and attitudes - "Motivation is what gets you started. Habit is what keeps you going." - Jim Ryun

------------

Sanket Naik Thought of the day

“Walking on water and developing software from a specification are easy if both are frozen.”

 

Edward V. Berard, “Life-Cycle Approaches”

-----------

Diwakar Gupta

UNIX is simple. But It just needs a genius to understand its simplicity.

--Dennis Ritchie

 

Before software can be reusable, it first has to be usable.

--Ralph Johnson

 

Good judgment comes from experience, and experience comes from bad judgment.

--Fred Brooks

 

It's hard enough to find an error in your code when you're looking for it;

It's even harder when you've assumed your code is error-free.

-- Steve McConnell Code Complete

 

The trouble with the world is that the stupid are sure and the  intelligent are full of doubt.

--Bertrand Russell

 

If debugging is the process of removing bugs,

Then programming must be the process of putting them in.

--Edsger Dijkstra

 

You can either have software quality or you can have pointer arithmetic;

You cannot have both at the same time.

--Bertrand Meyer

 

There are two ways to write error-free programs; only the third works.

--Alan J. Perlis

 

Measuring programming progress by lines of code is like measuring  aircraft building progress by weight.

--Bill Gates

 

The first 90% of the code accounts for the first 90% of the development time.

The remaining 10% of the code accounts for the other 90% of the development time.

--Tom Cargill

 

Programmers are in a race with the Universe to create bigger and better idiot-proof programs.

The Universe is trying to create bigger and better idiots. 

So far the Universe is winning.

--Anon

Theory is when you know something, but it doesn't work.

Practice is when something works, but you don't know why it works.

Programmers combine Theory and Practice: Nothing works and they don't know why.

 

The Six Phases of a Project:

·         Enthusiasm

·         Disillusionment

·         Panic

·         Search for the Guilty

·         Punishment of the Innocent

·         Praise for non-participants

 

No matter how slick (efficient) the demo is in rehearsal,

When you do it in front of a live audience

The probability of a flawless presentation

Is inversely proportional to the number of people watching,

Raised to the power of the amount of money involved.

 

14 julio

Tools that are installed in my system

http://www.codeplex.com/Wiki/View.aspx?ProjectName=VSCmdShell

Welcome to the VS Command Shell Homepage!


VSCmdShell provides users with a shell window inside the Visual Studio IDE that can be used for Visual Studio commands as well. Current version allows user to use either Windows Command Shell (cmd.exe) or Windows PowerShell.

NOTE: The VS Cmd Shell is an Add-In tool. Therefore, it will not work with Express editions of Visual Studio 2005. It does work with Standard or higher editions of VS 2005.

Check out all of the VSCmdShell Features for the 1.2 release.

Note: We have limited availability of developer time. If someone is interested in debugging and fixing one or more of the bugs reported under Issue Tracker, it would shorten the time between releases.

Quick Start to using VS Command Shell

  1. Download VSCmdShell 1.2 release
  2. Run VSCmdShell.msi to install
  3. Launch Visual Studio 2005
  4. Go to View - Shell Window (VSCmdShell) to open the VS Command Shell tool window
    1. Go to Tools - Options - Power Toys - VSCmdShell for customization options

vscmdshellsmall.png

Getting Started with VSCmdShell Development

  1. Install the following development tools
    1. FXCop 1.35 RC 1
    2. NUnit 2.2.7
    3. WiX 2.0.3719
    4. Windows PowerShell RC1

  1. Download the latest source code
  2. Steps for Building VSCmdShell
  3. Steps for Running Verification Scripts

Contributing to VSCmdShell

We're looking for developers to join us in the 1.3 release. Check out the current work items at 1.2 Production.

Feel free to contribute by

  1. Either creating new or finding existing bugs or feature requests you want to work on
  2. Leave a note in the comments that you're going to investigate this bug (until you have developer rights, you won't be able to assign bugs to yourself)
  3. Download the latest sources and create a bug fix
  4. Zip up your changes and post them as an attachment to the work item
  5. Fill out the Project Assignment Agreement.TIF form and follow the VSCmdShell Assignment Agreement Instructions to send it to us.

Note that by posting your submission to the Issue Tracker, you agree to do so under the CodePlex TOU

Join the Community

There are numerous ways you can participate in the VSCmdShell community

I installed one more tool for screen capture. Developed in dotnet only ie Cropper

Cropper in C#

Point and Shoot Screen Captures

Cropper is a screen capture utility written in C# on the Microsoft .Net platform. It makes it fast and easy to grab parts of your screen. Use it to easily crop out sections of vector graphic files such as Fireworks without having to flatten the files or open in a new editor. Use it to easily capture parts of a web site, including text and images. It's also great for writing documentation that needs images of your application or web site.

The files are saved straight to a folder of your choice in the format you specify or to the clipboard or printer. No more 'Print Screen'... open image editor... paste from clipboard... crop... export. Just double-click the form or press enter, and whatever is visible below the form is captured.

The source code is freely available with shared source licensing. The license information is available in each class file.

 

Reviews

MSDN magazine

About.com

 

Controls

     • Right Click: Context menu on main form.
     • Arrow Keys: Nudge form one pixel.
     • Alt + Arrow Keys: Resize form one pixel.
     • [ or ]: Resize entire form while keeping the crosshairs centered.
     • Alt + [ or ]: Resize the thumbnail indicator one pixel.
     • + Ctrl: changes all resize and nudge amounts to ten pixels.
     • DoubleClick or Enter: Take a screen shot or start/stop a recording plug-in.
     • Tab: Cycle form colors. 
     • Shift+Tab: Cycle form sizes. 
     • Esc: Hide the main form
     • F8: Showthe main form

 

Version 1.9.0

This is the latest stable release.

[Changes from 1.8.0]

1) .Net Framework 2.0. Cropper is now compiled against the .Net 2.0 Framework. The installer now works on systems with only the 2.0 Framework installed.

2) Vista Compatibility. A new option to hide the form during a screenshot is available in the options dialog. The new option allows Cropper to capture other transparent windows and keeps the crop form from showing up in the capture on Vista Glass. This option is automatically enable when running on Vista but may be overridden by the user.

The Alt+PrintScreen capturing now properly captures windows in Vista that have glass in the client area. 

3) Predefined Sizes. Frequently used form sizes can now be saved. The sizes are managed in the options dialog under the appearance tab. While working with cropper the sizes may be accessed via the right click menu or by pressing Shift+Tab to cycle through the different sizes.

4) Alt+PrintScreen Captures Stay on Clipbaord. The Options dialg Capturing tab allows the user to keep Croppers Alt+PrintScreen captures on the clipboard.

5) Configurable Plug-In Support. Cropper now has support for integrated plug-in configuration. A new tab named Plug-Ins will present options from plug-ins that support configuration. The new functionality also supports easily persisting a plug-in's settings into Croppers configuration file.

Two included plug-ins support the new configuration options. The clipboard plugin allows the user to choose the format of the image that is placed on the clipboard and the Jpeg plug-in has a single option for specifying the file extension. More community plug-ins with configuration support are on the way.

6) 'Prompt' File Name Template Bug Fixed. A bug that could cause a null reference exception when using the 'Prompt' file name template has been fixed. Another bug in the dialog placement when the crop form was set to always on top has also been corrected. 

        1.9 Downloads

Full release history
Download installer
Source code available at CodePlex

 

Version 1.5

This is the last single assembly version of Cropper. It will remain available because of its small size and all in one nature. See release history below for more version specific information.

1.5 Downloads

Full release history
Download Binaries
Download Source

Also available at ProjectDistributor.net

 

Community Plug-ins

Animated Gif Plugin (John Galloway) - Now on CodePlex
More info and download

Gif Output Plugin (Eric Bachtal)
More info and download

OneNote, Flickr and TinyPic Upload (Patrick Altman) - Now on CodePlex
More info and download

Mantis Bugtracking Upload (Victor Boctor)
More info and download

 

Known Issues

The maximum size of the crop form is smaller than the screen size. This is a limitation of the way the UI is currently drawn. There is an area of transparent form around the visible area which causes Cropper to appear to be smaller than the maximum form size. With the original usage of cropping out small areas of the screen this was not pressing problem. The next version uses a different method for drawing to the screen and will not have this limitation.

Unable to capture images of movies in WMP or Winamp. This usually applies to all screen capture programs. It's hardware acceleration / hardware video overlay that causes it. In Windows Media Player, under the performance tab, slide the video acceleration to something less than full. In Winamp, under Video Options, uncheck 'Allow hardware video overlay'. This should allow you to take screenshots with any program.

Cropper does not capture semi-transparent / layered windows. Since Cropper is itself a layered window, adding the ability to capture other layered windows causes the Cropper window to show in the screenshot. Cropper was originally designed to easily pull out parts of web pages for documentation or images out of vector graphic comps. Alternative capture methods are coming that will enable the capturing of full windows.

No plug-ins loaded and no plug-ins listed in output menu. This has happened for a few users after downloading the application. It is caused by the user's zip application not extracting the folder structure. All plug-ins should be in a subfolder named 'plugins'. Included plug-in names will usually end with Format, Plugin, or Effect.

----------

3.ATnotes

4. ProcessExplorer  more enhanced than TaskManager of Windows.

5.viewstatedecoder

 6. SlickRun

7. WordWeb

8. WinMerge

9. RssReader

10. GreatNews

Free Visual Studio Addins for a developer

Hi All,

 

http://searchvb.techtarget.com/originalContent/0,289142,sid8_gci1262570,00.html?

 

DOWNLOAD   Reflector for .NET  (Lutz Roeder)

   "Reflector is the class browser, explorer, analyzer and documentation viewer for .NET. Reflector allows to easily view, navigate, search, decompile and analyze .NET assemblies in C#, Visual Basic and IL."

    

DOWNLOAD   GhostDoc  (Roland Weigelt)

   "GhostDoc is a free add-in for Visual Studio that automatically generates XML documentation comments for C#. Either by using existing documentation inherited from base classes or implemented interfaces, or by deducing comments from name and type of e.g. methods, properties or parameters."

    

DOWNLOAD   DPack  (USysWare, Inc.)

   "DPack is designed to greatly increase developer's productivity, automate repetitive processes and expand upon some of the Microsoft Visual Studio features. DPack includes various browser tools that allow the developer to quickly narrow the search down to a particular class, method or assembly type. DPack includes greatly enhanced numbered bookmarks feature, various code navigation tools as well as streamlined surround with feature, and much more."

    

DOWNLOAD   CodeKeep  (Dave Donaldson)

   "With the CodeKeep add-in, you can manage your code snippets and search for other code snippets without ever having to leave Visual Studio."

    

DOWNLOAD   AnkhSVN  (Arild Fines)

   "AnkhSVN is an open-source Visual Studio .NET addin for the Subversion version control system. It allows you to perform the most common version control operations directly from inside the VS.NET IDE. Not all the functionality provided by SVN is (yet) supported, but the majority of operations that support the daily workflow are implemented."

    

DOWNLOAD   VSCmdShell  (James Avery)

   "The VSCmdShell powertoy combines the command window and the command prompt and makes them available in a single window. Just about anything you can do in the command prompt you can now do right inside of the IDE. You can also execute Visual Studio commands in the same window by simply prefacing that command with an exclamation point, you will even get IntelliSense for the command list. "

    

DOWNLOAD   Regionerate  (Omer Rauchwerger)

   "Regionerate is an open-source tool for developers and team leaders that allows you to automatically apply layout rules on C# code. Regionerate runs on Visual Studio 2005, Visual Studio Codename Orcas Beta 1, #develop 2.0, NAnt and on command line."

    

DOWNLOAD   Consolas Font Pack for VS 2005  (Microsoft)

  "The Microsoft Consolas Font Family is a set of highly legible fonts designed for ClearType. It is intended for use in programming environments and other circumstances where a monospaced font is specified. This installation package will set the default font for Visual Studio to Consolas."

 

DOWNLOAD   Microsoft Interop Forms Toolkit 2.0  (May 2007)

   "This toolkit helps you bring the power of .NET to your existing VB6 applications, by allowing them to display .NET Forms and Controls from within the same application. Instead of upgrading the entire code base, these applications can now be extended one form at a time. The goal is a phased upgrade, with production releases at the end of each iteration containing both VB6 and VB.NET forms running in the same VB6 .exe process."

    

DOWNLOAD   Application Verifier  (May 2007)

   "Application Verifier is a runtime verification tool for unmanaged code that assists in finding subtle programming errors that can be difficult to identify with normal application testing. Run the Application Verifier tests on your code to identify issues within heaps, handles, and locks."

    

DOWNLOAD   ILMerge  (Feb 2007)

   "ILMerge is a utility for merging multiple .NET assemblies into a single .NET assembly. It works on executables and DLLs alike and comes with several options for controlling the processing and format of the output."

    

DOWNLOAD   XML Notepad 2007  (Apr 2007)

   "XML Notepad 2007 provides a simple intuitive user interface for browsing and editing XML documents."

    

DOWNLOAD   Internet Explorer Developer Toolbar  (May 2007)

 "The Microsoft Internet Explorer Developer Toolbar provides a variety of tools for quickly creating, understanding, and troubleshooting Web pages."

 

Earning money with blogs

Hi All,
 
Now meaning of blog was changed.
It is not just a place for expressing your opinions and knowledge .At the same time you can earn some money too.
 
Some example bloggers are:
 
youthcurry.com
http://www.indiauncut.com/
Saltwaterblues.blogspot.com
Jaiarjun.blogspot.com
Thecompulsiveconfessor.blogspot.com
Cuttingchai.com
Jabberwock
Thanks
Sreedhar