Jack is Here, asp.net findings

As a software engineer, I focus on .NET, especially asp.net, C#, WCF and so on, and I am also very interested in Search Engine Optimization.

Entries Tagged ‘application’

A hyperlink control that is used to open a file or an e-mail message fails in an application that uses MSXML 6.0 on a Windows XP-based or Windows Vista-based computer

Symptoms
On a Windows XP-based or Windows Vista-based computer, you run an application that uses Microsoft XML Core Services (MSXML) 6.0. The application contains a hyperlink control that users can use to open a file or an e-mail message. However, in this scenario, the hyperlink control may fail.
This issue occurs if the following conditions are true:The file URL or the e-mail message URL is encoded in the UTF-8 format.The output is in the HTML format. Note This issue does not occur if the URL starts with http://.
Resolution
XSL Transformation (XSLT) does not recognize the UTF-8-encoded URL because there is no “no-uri-escaping” XSLT flag in MSXML 6.0.

FIX: You may receive a ‘System.Runtime.InteropServices.COMException’ exception when you try to access a WPF application by browsing a Web service

Symptoms
Consider the following scenario. On a computer that has .NET Framework 3.5 Service Pack 1 (SP1) installed, you run an ASP.NET Web service application that is hosted on Internet Information Services (IIS). You use a Windows Presentation Foundation (WPF)-based application to generate content context for the Web Site or Web service, for example, images. In this scenario, when you try to access the WPF application by browsing the Web service, you may receive the following message:

A first chance exception of type ‘System.Runtime.InteropServices.COMException’ occurred in PresentationCore.dll
Additional information: The program issued a command but the command length is incorrect. (Exception from HRESULT: 0×80070018)
Resolution
When the WPF application calls the NtRequestWaitReplyPort function to dispatch a message through a local procedure call (LPC) to Windows Manager Session Manager service (UXSMS) in the DwmGetTransportAttributes function, the E_ACCESSDENIED exception is returned. Then, the DwmGetTransportAttributes function tries to decode the message. However, the message was never handled because it is not a valid packet. Therefore, the code returns E_INVALID_COMMAND_LENGTH and triggers the exception.

On –server Ajax, a Paradigm Shift That Brings the Ajax Benefits to Enterprises

Typical AJAX = Client Server
AJAX client side is similar to client-server computing, because it shifts much of the application logic to the client. It allows experienced javascript developers for applications that access the Internet and the computer they run on the development, during the liberation of the servers that do not focus on UI tasks. Client-side AJAX application shows that flow and UI logic will be developed in conjunction with DHTML and JavaScript to connect to any server-side
Failed, the trend towards AJAX has on businesses and the line of business applications. The developers are constantly trying to cope with ever-growing demand while improving the overall user experience. However, AJAX is a new challenge when they are used in the company, submitted.: Securing direct connections between client and server

On Server AJAX = On Server computing

The On-Server AJAX paradigm shift is lead by Visual WebGui.
The approach, marked by Guy Peled as

On-Server AJAX, opens the path for enterprises to enjoy the AJAX evolution benefits

Server based computing platforms such as Citrix and Windows Terminal Services have grown in popularity as a result of no alternatives means of supporting heavy deployments of client-server line of business applications over web. Their costs are accordingly. On-Server AJAX paradigm shift allows for the first time, to support deployments of complex AJAX line of business applications in unprecedented simplicity, by-design security, no-limit complexities all at dramatically reduced costs.

Eliminating the security hazard, facilitating enterprises usage

Client side AJAX requires the browser to connect directly to a web service or even a raw data provider. Since this is a very dangerous practice, developers usually connect to a proxy application service which understands the “context” of the request by recalling session state. There are numerous articles discussing the security challenges presented by client side AJAX. For consumer internet sites, the improved user experience has usually overridden the security concerns. However, for enterprise applications this is still a key concern.

On-Server AJAX utilizes a client side “rendering” engine which communicates with the server over XMLHttp. The rendering engine uses a proprietary protocol to incrementally update the view. The client never consumes data or services directly since all of the application logic, UI logic and data access is handled on the server. The client simply connects to the “view” on the server and therefore never compromises security. Furthermore, since a proprietary protocol is used to correlate view state between the server and the client, it’s a greater challenge to override, eavesdrop or hack.

In addition in On -Server AJAX, the only data that is delivered to the client is data that can be viewed on the client meaning there is never any sensitive data that may be required for logic or validation beyond what is rendered and seen by the user on the screen.

Developer Productivity in building complex enterprise level GUIs, as never before

While AJAX has brought a significant improvement in user experience and application complexity, it has also brought about a dramatic increase in the complexity of development and testing. Furthermore it requires developers to a number of different languages: Javascript, HTML, CSS and XML on the client as well as the server side language being used to develop the underlying business logic.

A complex web application such as Microsoft Outlook Web Access or Salesforce.com also requires serious architecting skills in order to maintain application state, security and data integrity between local cached data and server side data. While historical, page based web applications were deemed easier and cheaper to develop then their desktop counterparts, developing a complex client based AJAX web application is harder and more expensive to develop then an equivalent client-server application.

On-Server AJAX paradigm shift enables the developer to use a single language and programming model in order to design the application UI and the underlying logic. In addition it alleviates the need to understand and deal with the web’s innate statelessness. Instead On-Server AJAX offers the use of well known design patterns and tools such as WinForms to design and develop highly interactive, data rich applications with the same productivity of desktop applications.

Simplifying the architecture from a loosely coupled, stateless, multi-language/technology into a tightly coupled, object oriented, single language environment means less time is spent on architecture, development, debugging and maintenance ultimately improving ROI and TCO. In addition the layout and interaction design are not as limiting as most web oriented application development platforms.

On-Server AJAX developers also enjoy re-use of well honed skills (WinForms) and existing code which further improves productivity.

For technological Gurus opinion on On-Server AJAX productivity see:

MS MVP RICK STRAHNL on his blog: “Visual WebGui is intriguing. It’s ridiculous how productive you can be with a tool like this compared to building an ASPX page. But somehow it feels like cheating…”. ” http://west-wind.com/weblog/posts/180727.aspx

MVP ROY OSHOROVE on his blog:” “…Visual WebGui can help change the web development world and make it more usable, reachable and easier than ever…” http://weblogs.asp.net/rosherove/archive/2007/07/28/visual-web-gui-helps-me-write-in-winform-and-run-as-asp-net.aspx

Highly optimized performance (purely desktop’s) and user experience

Client side AJAX is meant to improve the responsiveness of the client. In most cases the user experience is improved, however it can have a dramatic effect on server load. Frameworks send across hundreds of lines of Javascript code over and over between requests, necessitating heavy I/O on the host web server generating a “large” bandwidth profile. Client side AJAX frameworks rely on the processing power of the client to handle caching, serialization, validation and paging. Performance varies according to the available resources on the client. Lower memory and slower CPUs could have an adverse effect on the user experience.

On- Server AJAX only need to transfer the rendering engine code once and then transfer state and data changes as required. Ultimately they require more client/server round trips; however their bandwidth profile is kept at a minimum. This results in a highly responsive application which utilizes fewer resources by the server enabling it to handle more concurrent users. In On-Server AJAX the client only handles rendering of the current view state. This means that less client side objects and data need to be processed on the client (for rendering purposes) resulting in less client side resources being required. Ultimately this ensures all users receive uniform performance regardless of their memory and CPU limitations.

MS MVP WIKTOR ZYCHLA on his blog: ‘ VWG is the undoubted winner it did a great job of serving the highest number of requests per second”

http://netpl.blogspot.com/2007/06/aspnet-ajax-framework-contest.html

Summary
As more and more applications in turn support the Internet as the de-facto deployment platform, the need for tools to grow and development on complex surfaces. AJAX is a key component of modern web applications and will continue to serve as the basis for many rich Internet applications. AJAX is just an expression, there are plenty of AJAX technologies and techniques available, and not all are created equal. As a whole, On-Server AJAX paradigm shift led by Visual WebGui provides a better way to design and develop complex, secure, robust applications in an effective and familiar way.

For samples of applications built on On-Server AJAX see:

http://www.visualwebgui.com/Community/Forum/tabid/53/forumid/-1/threadid/5247/scope/posts/Default.aspx

Bibliography:

“Cognitive Load and the Superiority of Server-Side Ajax GUI Frameworks”

http://blogs.pathf.com/agileajax/2006/08/cognitive_load_.html

“Attacking AJAX Web Applications” – Alex Stamos, Zane Lackey iSEC – http://www.isecpartners.com/files/iSEC-Attacking_AJAX_Applications.BH2006.pdf

“Ajax (programming)” – Wikipedia

http://en.wikipedia.org/wiki/Ajax_(programming)

“Server –Side AJA X for the Enterprise”

http://www.adtmag.com/article.aspx?id=21111

“What’s Ajax”

http://ajaxpatterns.org/Whats_Ajax

“Ajax alert raises security, scalability issues”

http://searchsoa.techtarget.com/originalContent/0,289142,sid26_gci1162641,00.html

Microsoft .Net: Experience It for Universal Services

Formerly known as the next generation of Windows, Microsoft's new Internet strategy, Microsoft's. Net is Microsoft's products and technologies, the general term for help in the collection connect people, information, systems and equipment. Microsoft. NET Framework is a software framework, which can be installed on a computer running Microsoft Windows operating system. ASP. NET consulting firms now also provide high-quality Microsoft. Is a reliable, scalable and reliable network services.

The whole. NET architecture allows the software integration really smarter and easier. Microsoft. Net developers are service-oriented services provide the building blocks for applications. . Net services help developers focus on their application logic in order to create targeted results. NET Application Development. If you do a research on the Microsoft. Net application service professionals in your city online, you will find a series of too. Net application building agencies, staffed by experienced Microsoft Certified Professionals with experience in application development selected Microsoft. Net development environments.

Microsoft .Net connects a broad range of personal as well as business technologies and enables access and use of crucial information, whenever and wherever it is needed. Built on XML Web service standards, Microsoft .Net helps connect both new and existing applications with software and web application to services across platforms. Applications and programming languages can also be accessed in the connection framework Development environment, testing server, database, coding standards are the prime Microsoft .Net solutions areas that many an outsourcing services providers of the segment are now focusing on. Using protocols and file formats such as Simple Object Access Protocol, Web Services Description Language and Universal Description, Discovery and Integration, Microsoft .NET was built for integration through XML Web services. But today, it also includes internet standard like HTTP, the communication protocol between Internet Applications. Truly, .Net framework has turned into a common environment for building, deploying, and running different types of web services and web applications.

iPhone Application Development: No More a Geek’s Darling!

Smartphone OS market share in the fourth place, iPhone's OS has surprised us all! However, the launch of the iPhone SDK as well as the field of smart phones, iphone in the minds of experts in application development, and strengthen its place.

iPhone SDK developers is to create a unique and flexible application of available iPhone applications can be enhanced. Here, developers, iPhone has some notable features of the software development kit:

  • Developers can create applications using Google Maps API (Application Programming Interface).
  • Developers can connect their applications with external hardware accessories, for example a keyboard or a blood pressure monitor via Bluetooth (in case of wireless accessories) or dock connector.
  • It also allows info-swapping through peer-to-peer connectivity over Bluetooth.
  • Developers building paid applications will have the opportunity to have their apps based on subscription fees.
  • It also allows developers to add streaming audio and video to the applications. They can also add voice in games.
  • The SDK also includes the push-functionality.

iPhone Open Application Development: Not for Geeks Anymore!

The iPhone application development process can be implemented with ease, thanks to the in-depth info and tutorials available on the iPhone official website. Users can access this information after registering with the site and downloading the SDK.

The site provides a visual presentation of the tutorial. Developers how to get the idea – you can watch a movieiPhone mobile application development procedure. These movies give a step-by-step introduction on user interface and general overview of application development.

The official site provides iPhone, but also detailed information on programming and contains hundreds of sample code and a reference library. A developer with some knowledge of Java, ASP.Net and Ruby on Rails can easily be taken the programming techniques. Knowledge of object-oriented programming and Objective C programming language, it will be helpful to develop applications for the iPhone. It is recommended to refer the reference guide for more information on the Objective C programming language to.