VFP Conversion Papers
Papers on VFP Conversion.com
-
Understanding Visual Inheritance in .NET
Inheritance is the single most important new object-oriented feature in Visual Studio.NET. Surprisingly, not much has been written about the subject, and most of the information available is either very basic and an "overview" at best, or just plain misleading. In this article, I give you a real-world overview of what inheritance - especially visual inheritance, can do for you.
-
The Power of Inheritance in .NET
Inheritance is one of the most fascinating features in the Visual Studio.NET languages. We have discussed this feature in several articles in the past, mainly to explain the basic concepts. Now we are going to take a look at what inheritance can actually do for you, rather than how it works.
-
COM Interop in Visual Studio .NET
The .NET Framework presents exciting new opportunities for developers. By now, you may have heard that .NET represents a departure from COM, the focal point of Windows development for the past several years. Because of the investments in COM, it is quite likely you will want to implement COM in VS .NET. Conversely, the .NET Framework has a number of nice features that you will want to implement in COM-based applications. This article illustrates how COM and the .NET Framework can work together.
-
The Visual FoxPro Toolkit for .NET
Visual Studio .NET offers a rich tool set, but anyone who has ever used Visual FoxPro will soon notice that many of their favorite features are not available. However, a new set of public domain classes can add these functions to both Visual Basic .NET and C#.
-
Make, Buy, or Lease: the Software Acquisition Dilemma
Over the past several years, a revolution has taken place in software development, fueled by new modeling tools, integrated development environments and visual code assembly.
-
Modern Application Development: Visual FoxPro and .NET
Markus Egger discusses the current state of development (2004) and how Visual Studio .NET and Visual FoxPro fit in.
-
.NET Interop for Visual FoxPro Applications
Now that .NET is here you've undoubtedly had the urge to use or at least play with the new functionality that the platform provides. Unfortunately migrating to .NET from Visual FoxPro (or most other development languages) is a big step that requires a steep learning curve. Integration between the old and the new will be crucial as a first step to provide for the ramp up time that's needed to get up to speed on the new platform as well as providing vital links between old and new applications. In this article Rick looks at the most common ways that you can use to integrate logic and data between Visual FoxPro and .NET.
-
Calling VFP COM components from .Net and ASP.Net
Now that .NET is here you've undoubtedly have the urge to use or at least play with the new functionality that the platform provides. Unfortunately migrating to .NET from Visual FoxPro (or most other development languages) is a big step that requires a steep learning curve. Integration between the old and the new will be crucial as a first step to provide for the ramp up time that's needed to get up to speed on the new platform as well as providing vital links between old and new applications. In this article, which is part of a series of .Net Interop articles, Rick looks at how to integrate Visual FoxPro COM components from .Net, specifically ASP.Net.
-
Comparing VFP String Performance to .NET String Performance
The series of test conducted here are based on the "String Processing with VFP" article published in the Spring 2000 issue of CoDe Magazine.
-
VFP and .NET: The Best of Both Worlds
Several years have passed since the first beta version of Visual Studio .NET and Microsoft is now looking toward their 3rd release of the product. Visual FoxPro (VFP) has also been around for several years with a new version (VFP 9) due late this year. Both tools have great features that can make our lives as developers much easier. So why shouldn't we use both tools? There are features in .NET that can greatly benefit VFP applications. On the other hand, VFP provides developers with great features that are not available in .NET. The features in VFP can be of great help when you are writing code in .NET and are looking for common features. This article demonstrates how you can have the best of both worlds.
-
Using Visual FoxPro to call.Net Web Services for Data Access
Using Web Services from Visual FoxPro is not difficult, but dealing with Data or Complex objects is not quite as straightforward as it could be.In this article, I'll describe how you can work with .Net Web Services and pass complex data between VFP and .Net and handle updating scenarios for Data between the two.
-
VFP 8: A Great Tool For Data-Centric Solutions
Eric Rudder talks about VFP 8.
-
VFP 8: Visual FoxPro's Biggest Update Since Version 3.0
Ken Levy discusses VFP8.
-
VFP 8 Feature Highlights
Visual FoxPro 8 includes numerous new features that are a direct response to the requests of VFP developers.Just reading through the "What's New" section of the documentation will take you quite a while due to large quantity of additional or changed features and commands. Let's take a brief look at just a few of the exciting new capabilities that you can put to use immediately.
-
Collections are Cool!
Collections are a common way to store multiple instances of things.For example, a TreeView control has a Nodes collection and Microsoft Word has a Documents collection. Until recently, Visual FoxPro developers wanting to use collections often created their own classes that were nothing more than fancy wrappers for arrays. However, in addition to being a lot of code to write, home-built collections don't support the FOR EACH syntax, which is especially awkward when they're exposed in COM servers. Visual FoxPro 8.0 solves this problem by providing a true Collection base class.
-
Event Binding in VFP 8
Visual FoxPro developers have been using an event-based methodology for a very long time.For most purposes, events are what drive the development effort. The user clicks a button, causing an event to fire, and the developer writes code to react accordingly. All of this happens very transparently and without difficulty for either party. However, from a developer's point of view, there also isn't much flexibility in this approach. But in VFP 8, event handling is changing for the better.
-
Introducing the CursorAdapter Class
One of the most exciting new features of Visual FoxPro 8 is the CursorAdapter class, which provides a common interface for working with data from many different sources.Chuck takes you with him on an adventure in exploring how to use CursorAdapter to change the way you relate to data in VFP 8, whether native tables, ODBC, OLE DB, or XML.
-
Structured Error Handling in VFP 8
With the introduction of Visual FoxPro 3.0, error handling in VFP changed substantially.Rather than using "on error" statements, "state of the art" error events became available. Now, 7 years later, more sophisticated error handling mechanisms take center stage as Visual FoxPro 8.0 introduces structured error handling.
-
Member Classes Bring Flexibility
The new VFP 8 feature often referred to as "Member Classes" is a set of new properties and new ways to define classes that can bring much more flexibility when working with certain controls.Need to define several pages in a pageframe with different properties and settings? No problem. How about better control of grid column headers? No problem.The new VFP 8 feature often referred to as "Member Classes" is a set of new properties and new ways to define classes that can bring much more flexibility when working with certain controls.Need to define several pages in a pageframe with different properties and settings? No problem. How about better control of grid column headers? No problem.
-
The VFP 8 XMLAdapter Class
Visual FoxPro 8.0 introduces a whole new way to work with eXtensible Markup Language (XML).The XMLAdapter class works with hierarchical XML, provides an object-oriented approach to working with XML data, and leverages your familiarity with tables and fields in the way it exposes the XML contents.
-
Scripting SQL Server 2000 Indexes
Adding indexes to tables is the most effective way to optimize your SQL Server query performance. Tables that you query often may require several indexes in order to handle the various search arguments you send. There is one particular situation where indexes on large tables are a hindrance, though. When you're bulk-copying data into the table, it's best to have either no index at all, or just a clustered index. For those situations it is best to use Transact-SQL scripts to remove and add those indexes. In this article you'll learn how to use Transact-SQL stored procedures to generate Transact-SQL indexing scripts that are more robust and less laborious than SQL Server's Enterprise Manager scripting tool.
-
My Favorite Feature
When you first begin using the new Visual FoxPro 8, you are sure to find useful new features that will make your development tasks easier.Several members of the Visual FoxPro developer community who have already worked with VFP 8 tell us their opinions of the best and most useful new features. Perhaps their answers will help guide you to some cool ideas you can put to work right away.
-
VFP 8 Tips and Tricks
Some of the early adopters of VFP 8 have contributed tips for some of the new features of this exciting release.Check out their ideas, then jump into the product and try some of the new stuff. You'll find that there is much more than meets the eye, with hundreds of additions, changes, and improvements.
-
Creating a Statusbar Control with VFP 8
Visual FoxPro 8 offers many new features and opportunities to make life easier.In this article Rick describes how to build a native VFP-based status bar that fixes some of the problems found in the Windows Common Control OCX version (MSCOMCTL.OCX) that ships with VFP and other development tools. This article introduces several new VFP 8 features: Collections, the Empty object, AddProperty() and BindEvents(), and shows how to integrate these new features into a useful component.
-
Creating User-Defined Data Types in Yukon
The next version of SQL Server (code name Yukon) has extensive support of the Common Language Runtime (CLR).Previous versions of SQL Server (2000 and earlier) had a mechanism for creating custom data types. These data types were nothing more than aliases to system data types. In Yukon, you can create your own fully functional custom data types.
-
Getting Started with ASP.NET
ASP.NET represents a significant leap forward from traditional Active Server Pages (ASP) development. In this article, I'll show you what it takes to begin building ASP.NET Websites with Visual Studio .NET. This article will provide you with the knowledge you need to jumpstart your foray into the world of ASP.NET development.
-
A Not-So-Quick Tour of the Web DataGrid Control
Data-bound controls play a key role in the development of ASP.NET applications. Data-driven controls allow you to associate their whole interface, or individual properties, with one or more columns of a .NET-compliant data source. In this article, I'll delve into the depths of an extremely versatile data-bound control that is a fixed resence in any real-world ASP.NET application - the DataGrid control. I'll focus on the key programming aspects of the control, including data binding, column mapping, paging, and sorting.
-
What's New in Visual Studio .NET 1.1?
Visual Studio .NET provides a new set of features designed to improve and enhance the development experience. Most of these changes have to do with user ergonomics and are typical of a minor release of a Visual Studio product. Only a few of the changes are related to the underlying platform. This article assumes you are familiar with Visual Studio .NET 1.0 and it presents only the new features of the IDE (Integrated Development Environment) of Visual Studio .NET 1.1, for both C# and Visual Basic .NET. J# is not discussed because it was not part of Visual Studio .NET 1.0. In the interest of space, some minor cosmetic changes (such as reorganization of the Start page) are not listed.
-
The Two Faces of .NET
Rick Strahl takes a frank look at the "Good", "Bad", "Obnoxious" and "Unknown" qualities of .NET.
-
Getting Started With Regular Expressions
Regular expressions, also referred to as "regex" in the developer community, is an extremely powerful tool used in pattern matching and substitution.In this article, Jim will introduce you to regular expressions, what they are, why you would want to use them, and finally, how you can begin putting them to work in Visual Studio .NET.
-
Handling SQL Server Errors in Nested Procedures
Basic error handling in SQL Server's programming language, Transact-SQL, is straightforward.But when you nest calls to stored procedures, and the procedures have SQL transactions, error handling becomes much more complex. In this article I'll show you some tried-and-true models for how to handle errors in nested stored procedures with transactions.
-
Errors In Your ASP.NET Code? Don't Throw a Fit, Throw an Exception!
Error handling?everyone's favorite topic right?Even the best designed applications need to handle and properly manage errors the errors you can plan for and those you cannot.In this article, you'll learn error handling techniques in ASP.NET. Topics will range from handling common errors with the Try...Catch syntax to logging unhandled errors into the Windows Event Log.
-
Mobile CoDe.NET: Microsoft Mobility 101
Mobility is one of those fields which everybody knows is a definite part of our future, in 5 to 10 years or so. Think again.Amber steps out of her client's office, enters her car, pulls out her mobile phone and dials the number to her main office. She's calling Martin?her internal sales representative to inform him that she finally closed a deal with her client. She needs him to place an internal order at the warehouse. There are many items on that order, including 500 units of product X, configuration A. After a quick query in the central inventory management system, Martin informs her that there are only 250 units left of that configuration, but there are more than plenty for her order if the client would be willing to switch to configuration B. Amber now needs to call her client back and save the deal. The client will be very disappointed, the whole thing will have to be negotiated over the phone, and Amber will probably have to cut her margins or else she'll lose everything.
-
Implementing Two-Way Control Binding for Web Forms
ASP.NET has considerably raised the bar for Web development with very rich developer functionality built into a flexible and highly extensible object model.If you have a background of hand-coding ASP or other scripting or CGI-style technology, .NET's redundant code reduction and development process simplification seems almost too good to be true. But data binding for controls leaves a lot to be desired in terms of ease-of-use and reading the data back into the data source. This article examines what's wrong with simple data binding and provides a set of subclasses, making data binding a lot quicker and requiring much less manual code.
-
ADO.NET Best Practices
ADO.NET is a powerful toolbox but it's not a software magic wand.To get the most out of ADO.NET classes, developers must fully understand the model and study a few best practices. Based on years of real-world experience with ADO, ADO.NET provides a richer set of more powerful tools. But, ADO.NET is not designed to be an out-of-the-box tool that reduces any programming work to just point-and-click. In this article, you'll learn about common best practices for using three key element of any data access strategy: connections, security, and transactions.
-
SQL Server 2000 Replication 101: Terminology, Types, and Configuration
Replication figures as one of the more prominent features of SQL Server 2000.Replication is a complex application that uses a combination of stored procedures and executables to distribute and copy data between SQL Server databases. If you take care not to get lost in the details and confused by occasionally misleading terms, replication can be an important component in the database architecture of a SQL Server application. In this article, you'll learn about the terminology surrounding replication, the types of replication available in SQL Server, and how to configure (that is, install) replication.
-
Learn Outside the Box
Markus Egger talks about the needs to learn about the latest development technologies.
-
The Importance of the Managed Platform
.Net is a maturing platform. The first .NET alphas and betas went to a selected group of people years and years ago. At this point, we are approaching the third major installment of Visual Studio .NET (now called "Visual Studio 2005"). Surely at this point, nobody has to explain what .NET and the Managed Platform is. Or do we?
-
Walking on Cloud 9.0 of Visual FoxPro
The Visual FoxPro Team at Microsoft is enthused to announce Visual FoxPro 9.0.We'd like to include some details about Visual FoxPro 9.0 as an overview to the more detailed articles in this special issue CoDe Focus issue devoted to Visual FoxPro 9.0.
-
What's New with Data in Visual FoxPro 9?
The Microsoft Visual FoxPro team has a great reputation for responding to community requests and the next version of is no exception.Most evident in several changes to the data engine, Visual FoxPro 9 includes many enhancements for data access and database application development.
-
Extending the Visual FoxPro 9 Reporting System
Among the new and improved features in Microsoft Visual FoxPro 9, you'll find the ability to extend the behavior of the reporting system when running reports.In this article, you'll learn about Visual FoxPro 9's report listener concept, how it receives events as a report runs, and how you can create your own listeners to provide different types of output in addition to print and preview.
-
The Visual FoxPro 9 Report Writer
Microsoft has significantly improved the Report Writer in Visual FoxPro 9.They also recognized the significant investment in existing FRX-based reports and designed the new Visual FoxPro 9 Report Writer to be compatible with previous versions of Visual FoxPro Reports. This makes it a great blend of the old and the new. In this article, you'll learn about some of the new features, including the new reusable data environments, report protection, and several user interface enhancements. You'll also learn about enhancements to layout objects and data groups. Finally, you'll learn about one of the best improvements to the Visual FoxPro 9 Report Writer: multiple detail bands.
-
Controls, Events, Commands, and More
Microsoft Visual FoxPro 9 is here and it brings lots of new features.This entire issue of CoDe is dedicated to Visual FoxPro 9, providing details and scenarios on how you can use the new features and enhancements. In this article, I will discuss some of the new controls, events, and commands, and a little more.
-
Visual FoxPro 9 IDE Enhancements
Visual FoxPro 9 includes a number of IDE enhancements that make its already rich development environment considerably richer.
-
COM Interop: Making .NET and VFP Talk to Each Other
Many companies have been relying on COM components in the last couple of years. That includes Microsoft.Using COM components made it possible for different programming languages to reuse logic between them, by agreeing to a standard defined by the COM specification.
-
Great Reasons to Ring In 2005!
Wow, another year has gone by, and as you read this, you are probably returning to the office after a few more or less relaxing holiday time spent with friends and family and a New Year's celebration. Interesting things have happened in our industry in the last 12 months, but I predict that the next 12 months will be quite a bit more interesting! Seldom before have I been as excited about new technologies and developments as I am now.
-
COM Interop and Strong Typing
The basics of using a VFP COM component from .NET are relatively simple, but the more objects we use, the harder it gets. In order to make one's life easier from the .NET side, the component must be built a certain way from the VFP side. For instance, it's very common to create objects on-the-fly in VFP, given the ease of doing so. However, these objects cannot be consumed from .NET without writing extra code. This article covers some aspects of how the developer can improve the COM Interop experience when consuming VFP COM components from .NET.
-
The Revenge of the Thick Client
If you have been involved in a new software development project during the last five years ? and if you read this article, chances are you have ? then you have probably been faced with the question "Web application or Windows® UI?" And in the vast majority of cases, the answer to this question was probably "Web application." For modern, enterprise-wide systems there were simply many reasons and issues that made it hard to implement the desired feature set in a conventional Windows application and deploy it in a reasonable manner. At this point, the advantages and disadvantages of each application type are well understood, and decisions are easy to make. Or are they?
-
OOP: VFP vs. VS.NET
And discover why and when you should use .NET.
-
Compare Methods, Properties, and Fields in VS.NET and VFP
Discover the differences and similarities between Visual Studio .NET and Visual FoxPro.
-
Compare Inheritance in VFP and VS.NET
If you're starting to work with Visual Studio .NET, you'll find you have a head start when it comes to inheritance.Here are some of the differences.
-
Compare Variables in VFP and VS.NET
Learn about different types of variables, and what it means to perform boxing, unboxing, and casting operations.
-
Compare Interfaces and Polymorphism in VFP and VS.NET
Polymorphism is the use of multiple objects with the same methods that do different things.Interfaces let you create flexible architecture in your application. Find out how these concepts differ in Visual FoxPro and Visual Studio .NET.
-
Compare Constructors and Destructors in VFP and .NET
Unlike VFP, .NET forces you to give up control over the destruction of objects, but you get some benefits in return.
-
User Interface Challenges
Markus Egger discusses user interface technologies developers should familiarize themselves with.
-
Compare Visual Inheritance in VFP and .NET
Find out how your knowledge of visual inheritance in Visual FoxPro can help you take advantage of Visual Studio .NET's slightly different model.
-
Compare Static Members in VFP and .NET
You're familiar with instance members in Visual FoxPro. Now find out how you can benefit from static members in Visual Studio .NET.
-
Improve Code with Enums
To help you understand .NET development from a Visual FoxPro perspective, this article introduces you to the concept of enums and shows you how to use them to improve code quality.
-
Compare Events and Delegates in VFP and .NET
Events play a larger role in .NET than they do in Visual FoxPro. Learn how events work in the .NET world to write powerful applications.
-
C-Sharpest
C# 2.0 just shipped with a number of interesting new features: anonymous methods, nullable objects, iterators, partial classes, generics, and others. But the innovation does not stop there! Microsoft (and Anders Hejlsberg in particular) have already allowed us a sneak peek at some of the new features that will be available in C# 3.0.
-
Operator Overloading
To help you understand .NET development from a VFP perspective, this article introduces you to operator overloading and shows you how to apply it for powerful programming in .NET.
-
LINQ Up!
At PDC 2005, Microsoft announced a new technology called Language Integrated Query (LINQ), which will be available with Visual Studio “Orcas” (the next version of Visual Studio). A lot of exciting new technologies are announced at every PDC, and as a result, LINQ got some attention, but not nearly as much as I think it deserves. LINQ represents the ability to run queries right inside of Visual Basic, C#, or any other .NET language.
-
Beyond the Mists of Avalon
Markus Egger discusses tools used to create WPF (Windows Presentation Foundation, formerly "Avalon") interfaces, in particular, WinFX Extensions for Visual Studio as well as the Microsoft Expression product line.
-
LINQx
Microsoft demonstrated a new technology at PDC called LINQ (Language Integrated Query). The following note from Alan Griver, a member of the LINQ team at Microsoft, offers some details related to the LINQ project. In future issues of CoDe Magazine we will have more details on LINQ.Microsoft demonstrated a new technology at PDC called LINQ (Language Integrated Query). The following note from Alan Griver, a member of the LINQ team at Microsoft, offers some details related to the LINQ project. In future issues of CoDe Magazine we will have more details on LINQ.
-
Passing objects between FoxPro and .NET COM Components
COM Interop between Visual FoxPro and .NET seems trivial at first, but the devil is in the details.Simple COM calls using methods and properties with simple parameters are easily accomplished. However, once you start dealing with complex objects - objects with hierarchies or specific object types required by .NET as parameters or properties, you start running into problems. This article looks at some of the issues that you need to look out for when dealing with objects in applications that call .NET COM objects from Visual FoxPro.COM Interop between Visual FoxPro and .NET seems trivial at first, but the devil is in the details.Simple COM calls using methods and properties with simple parameters are easily accomplished. However, once you start dealing with complex objects - objects with hierarchies or specific object types required by .NET as parameters or properties, you start running into problems. This article looks at some of the issues that you need to look out for when dealing with objects in applications that call .NET COM objects from Visual FoxPro.
-
Handling .NET Events in Visual FoxPro via COM Interop
Last month I started a series of articles that are looking at a few advanced topics in using .NET COM Interop with Visual FoxPro. This month, I look at handling .NET events through COM Interop and briefly introduce creating and interacting with multi-threaded .NET components from your Visual FoxPro applicationsEvent Handling is an important feature both in Visual FoxPro and .NET.But both .NET COM objects and Visual FoxPro require special handling in order to deal with hooking up to COM events. In this article, Rick takes a close look at how events work in Visual FoxPro and .NET and how they can be used together across the COM Interop boundary.
-
How Many Threads Do You Need?
Markus Egger discusses the need to create multi-threaded applications.
-
Creating Multi-threaded .NET componentsfor COM Interop with Visual FoxPro
Multithreading is a powerful feature that allows you to asynchronously execute code while continuing to work or provide a responsive user interface to your application..NET makes multithreading very easy and in this installment you’ll see how to create and execute multithreaded components and communicate with them via events.Multithreading is a powerful feature that allows you to asynchronously execute code while continuing to work or provide a responsive user interface to your application..NET makes multithreading very easy and in this installment you’ll see how to create and execute multithreaded components and communicate with them via events.
-
Web Application Projects Are Here
Rick Strahl discusses Web Application Projects
-
VFP Conversion Roadmap Whitepaper
This whitepaper discusses strategies for managers converting Visual FoxPro (VFP) applications to .NET, and lays a foundation for producing an implementation plan.
-
LINQ
At PDC 2005, Microsoft introduced brand new technology known as LINQ, which stands for “Language Integrated Query.”The feature-set hiding behind this acronym is truly mind-boggling and worthy of a lot of attention. In short, LINQ introduces a query language similar to SQL Server’s T-SQL, in C# and VB.NET. Imagine that you could issue something like a “select * from customers” statement within C# or VB.NET. This sounds somewhat intriguing, but it doesn’t begin to communicate the power of LINQ.
-
Windows Presentation Foundation - an Introduction for VFP Developers
The Windows Presentation Foundation (short WPF) is coming, and it will replace all Windows UIs as we know them today.This means that no developer can ignore this technology. This article provides an introduction to WPF both from a general point of view as well as from a Visual FoxPro specific angle.
-
.NET Data Access with LINQ: A VFP Perspective
For Visual FoxPro developers, data access represents the daily bread and butter. Data access is a core feature of Visual FoxPro (which after all is an xBase descendent) and nobody gives much thought to the ability to run a select-statement right within a VFP program.Most languages however (including .NET languages such as C# or Visual Basic .NET) are not as data centric and thus do not support data manipulation as a core language concept. At least until now. But all this is about to change with the introduction of LINQ.
-
Leveraging Sedna Reporting
Sedna’s reporting features have made both the designing and rendering of a VFP report more extensible.In this article you’ll learn about a few of the new rendering objects that Sedna includes such as rotation and hyperlinks. You will also learn how to create your own custom rendering object and how to include a custom Builder interface element for it in the Report Designer.
-
Welcome!
Welcome to the third Fox Focus issue!As I write this (publishing deadlines being what they are) I’ve recently returned from a trip to Europe where I spoke at three different Visual FoxPro conferences in Germany, Amsterdam, and France. I showed off many of the new features coming in Sedna as well as a number of the enhancements being created by the community using the awesome extensibility built into VFP.
-
The Missing LINQ
Visual FoxPro’s (VFP) Data Manipulation Language (DML) is one of VFP’s most compelling features. It is also the most obvious feature VFP developers miss in .NET languages such as C# and Visual Basic. However, Language Integrated Query (LINQ), a new query language for .NET developers is a new feature in the upcoming releases of C# 3.and Visual Basic 9.0 that addresses these shortcomings.
-
From VFP to .NET
A practical look at what’s involved in converting your Visual FoxPro (VFP) applications to Visual Studio and SQL Server. Let me say up front that I am a long-time FoxPro developer and that I love VFP. I also love .NET and SQL Server and I’ve headed up and participated in many conversions. Most of the conversions I’ve worked on were not driven by technical necessity, but by customer demand that software be built with .NET and SQL Server. Whatever the reason, conversion from VFP to .NET is a significant undertaking.
-
Upsizing Simplified
The Sedna Upsizing Wizard is leaps and bounds better than the version previously shipped by Microsoft in any version of Visual FoxPro.The Fox Team listened to the complaints from the Fox Community over the years about the wizard being deficient, with some fatal flaws, and recognized how it became outdated with the advent of SQL Server 2005. Sedna attempts to correct all of this and more.
-
Visual FoxPro Web Services Revisited
Web services with Visual FoxPro (VFP) have never been easy. The most common Web service tool for FoxPro is the SOAP Toolkit, which has been discontinued and which had a host of problems when dealing with complex types passed over Web Services. In this article I’ll show how you can leverage the powerful Web service features of .NET and the new Windows Communication Foundation in your FoxPro application through COM Interop.
-
Welcome to the Future of Deployment
You can use ClickOnce to revolutionize how you install and update Visual FoxPro (VFP) applications. A dream come true, ClickOnce can put a stop to many of the deployment nightmares associated with distributing applications.
-
The My Namespace in Sedna
New to Sedna, Visual FoxPro emulates the My namespace first introduced in Visual Basic 2005.The My namespace makes .NET Framework classes more discoverable and allows you to write less code. Sedna, the next version of Visual FoxPro (VFP), includes a My namespace as well, for the same reasons. In this article, I’ll look at how Sedna implements My.
-
The Baker’s Dozen: 13 Productivity Tips for Moving from VFP to .NET
When Visual FoxPro developers take the plunge to learn .NET, the most common reaction is, “I could do such-and-such, this-and-that in VFP-how can I do it in .NET?” This special edition of The Baker’s Dozen will offer solutions for many of the typical challenges that VFP developers face when tackling .NET. I’ll start by covering .NET solution and project structures and an overview of the .NET Framework, and I’ll spend time showing how to use .NET reflection to do some of the things that VFP developers could accomplish with macro-expansion. Then I’ll cover different .NET features such as Generics, ASP.NET 2.0, and I’ll show how to create a reusable data access component. Finally, I’ll build the architecture for a set of reusable data maintenance classes in .NET.
-
Integrating VFP into VSTS Team Projects
Whenever more than one person works on a software development project, introducing some process to coordinate the activities of the team members is a priority.The larger the team, the harder it is to manage. To meet this need, Microsoft created Visual Studio Team System (VSTS). VSTS is a state-of-the-art Software Development Life Cycle tool suite that is tightly integrated into Microsoft Visual Studio 2005. VSTS provides deep support for .NET projects; however, whenever a software solution includes components developed on a platform other than .NET, such as Microsoft Visual FoxPro (VFP), VSTS loses some of its value because the projects aren’t integrated into VSTS. Leveraging the extensibility features of VSTS and VFP, this article will help you integrate VFP projects into VSTS team projects enabling your team to apply a comprehensive process to your entire software development effort.
-
COM Interop Over Easy
This article highlights some of the new toolkits and components coming out of Redmond for COM Interop.The Interop Forms Toolkit, the Interop UserControl Prototype, and the techniques used in Sedna’s NET4COM allow Visual FoxPro developers to incorporate .NET components into their applications.
-
The New and Improved Data Explorer
The Data Explorer introduced in VFP 9.0 allows developers to work with different types of data from diverse data sources independent of specific projects.The Sedna update extends this already powerful and productive tool.
-
WPF and Silverlight Super-Productivity: ListBoxes
ListBoxes suck. Except that statement is not true anymore. Not in WPF and Silverlight anyway, where ListBoxes have evolved from simplistic controls to true workhorse objects. ListBoxes have been around since the beginning of Windows (and other GUIs) and have served a pervasive yet simple purpose, which can be summed up as “show me a list of labels in a list with a scroll bar.” A premise that has its uses but is not sophisticated enough for advanced data presentation, which is why developers often use special controls such as “data grids” or “list views” among others. In WPF and Silverlight, however, ListBoxes are so flexible and powerful that they are the first choice for just about anything. In fact, WPF originally shipped without a data grid control since ListBoxes all but eliminated that need. Developer perception, however, was different and the power of the ListBoxes went largely unnoticed. That is reason enough for me to write an article that displays the ease, flexibility, and power of ListBoxes.
-
CODE Framework: Writing MVVM/MVC WPF Applications
The CODE Framework is an open-source application framework by the makers of CODE Magazine. It is entirely free of charge. It covers a wide range of features that can be applied altogether or individually in an À la carte fashion. All of these features revolve around a single concept: Building advanced business applications in a productive and maintainable fashion while maintaining great application architecture. In this article, we are focusing on a subset of the CODE Framework, specifically the components used to build WPF applications using the MVVM and MVC patterns.
-
CODE Framework: Building Services and SOA Business Layers
In the last issue of CODE Magazine, we took a look at CODE Framework’s WPF features. This time, we are going to look at a completely different area of the framework: Creating business logic and middle tiers as SOA services. SOA is the cornerstone of many modern applications, creating systems that are more maintainable, flexible, and suitable for a wide range of scenarios, ranging from Windows to Web and Mobile scenarios using a wide variety of technologies, and outperforming conventional multi-tiered applications in a range of metrics. Using CODE Framework, it also becomes easy and extremely productive to build SOA layers.
-
CODE Framework: Building Productive, Powerful, and Reusable WPF (XAML) UIs with the CODE Framework
In a prior installment of this series of articles about CODE Framework (“CODE Framework: Writing MVVM/MVC WPF Applications”, Jan/Feb 2012), I discussed how to use the WPF features of CODE Framework to create rich client applications in a highly productive and structured fashion reminiscent of creating ASP.NET MVC applications, although with WPF MVVM concepts applied. In this article, I will dive deeper into the subject and discuss the unique benefits of the CODE Framework WPF components which enable developers to create the part of the UI that is actually visible in a highly productive and reusable manner.
-
Converting XAML-Based Applications to Windows 8
The big news about Windows 8 is its new mode based on the Metro design language and UI paradigm. Metro apps are based on the new WinRT (Windows Runtime) and can be built in two distinct ways. One utilizes HTML5 and JavaScript, while the other uses XAML for the user interface definition and C#, Visual Basic, or native C++ as the language behind the scenes. Not surprisingly, the later has often been compared to other XAML-based setups, in particular Silverlight, but also WPF. After all, “XAML is XAML,” the reasoning goes, so it should not be difficult to move both WPF/Silverlight skills as well as actual applications into the new world of WinRT. But is that really so?
-
CODE Framework: Testing
The CODE Framework provides a set of tools for developing n-tier, service-oriented applications. In addition, there is a set of recommended patterns and practices that provide guidance in enabling developers to achieve Rapid Application Development, Contract-First implementation, and a system that allows you to change a contract without breaking an implementation. However, one question which has been repeatedly asked throughout our trainings and seminars is, “How do I Unit Test when I’m using the CODE Framework?” This article will examine the question and attempt to answer it.
-
CODE Framework: Creating Application Themes
In prior articles, I have shown how to create WPF-based client applications using the CODE Framework and the default themes it ships with. This is a great way to create applications quickly yet make them very reusable and maintainable. However, using the default themes is just the tip of the iceberg. CODE Framework’s theming system is completely open and the default options are just that: defaults. And it turns out to be surprisingly straightforward to create your own themes.
-
CODE Framework: Accelerating Development with Standard Views and Standard View-Models
In prior articles, I have shown how to create WPF-based applications using the CODE Framework and the MVVM and MVC patterns. This enabled developers to create quality applications quickly and in a fashion that can easily be understood by developers of all skill levels. In those articles I showed how to use view-models and views to create UIs. In this article, I am going to take this concept further by showing you how you do not even have to create new views and view-models, but instead can use the ones CODE Framework defines for you out of the box.
-
CODE Framework: Documents, Printing, and Interactive Document UIs
The CODE Framework WPF features (based on MVVM and MVC concepts) have become very popular amongst .NET developers, thanks to ease of development paired with a high degree of freedom, control and reuse. Another CODE Framework module takes these concepts and extends them into the domain of documents and printing. Many applications use third-party reporting products to create print and report output, and those products certainly have a good reason for existence and aren’t entirely replaced by the CODE Framework Document features. However, the CODE Framework Document features can replace some functionality that would otherwise be handled by reporting packages, and in addition, the CODE Framework Document features add a significant number of new features including the ability to create more naturally flowing documents and printouts and use those not just for print, but also use them as interactive user interfaces.
-
Building a CODE Framework Service and Consuming It on an iPhone Application
In this article, you will create a CODE Framework RESTful service and an iPhone application from scratch. For the client side, you will utilize XCode (yes, you’ll need a Mac!), which uses Objective-C as the primary language. This article won’t teach you the language; you need to know the basics of Objective-C. Even if you don’t know anything about it but want to code right away, read the article “Building a Twitter Search Client on iOS,” by Ben Scherman, available for all CODE readers in the Xiine application for Windows, Android, and iPhone. For the database, you’ll use any instance of SQL Server 2008. The service will be written in C#, using the latest version of CODE Framework, available on http://codeframework.codeplex.com, where you will find not only the download link, but also a lot of useful information.
-
CODE Framework: WPF Standard Themes
If you have been following this series of CODE Framework articles, you are already aware that CODE Framework provides the ability to use, create, and customize awesome-looking WPF application themes that also make apps maintainable and easy to build. But not everyone wants to create brand new Themes or customize existing ones. Instead, why not just use one of the great themes that ship in the box?
-
What’s New in CODE Framework in 2014
There are a bunch of hot new tools in CODE Framework that you’ll want to explore, including a new theme, new View Actions, List improvements, a Flow Form layout, support for new versions of Visual Studio and the .NET Framework, and enhancements to the View Visualizer.
-
The State of VFP Conversions
We have been helping customers convert Visual FoxPro systems to different platforms (mainly .NET and SQL Server, but there are others) for the better part of two decades. During that time, we have provided numerous articles, presentations, and training classes. Articles range from high-level road maps to in-depth, detailed technical articles. As time has passed, VFP conversion techniques and options have evolved. With that, we feel it is time to take a look at the big picture once again.