Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Comparisons and Issues
Message
General information
Forum:
Visual FoxPro
Category:
Visual FoxPro and .NET
Miscellaneous
Thread ID:
00876760
Message ID:
00877354
Views:
14
One thing about .NET is that it is made up of multiple parts, which makes it not always easy to compare to the "give me everything" model of VFP. When folks say ".NET", they might mean developing in C# or VB.NET, or they might mean the runtime environment, or they might mean Visual Studio.....

CLI (Common Language Infrastructure): The ECMA/ISO specification for the runtime and some of the framework classes.
CLR (Common Language Runtime): Microsoft's implementation of the CLI.
CTS (Common Type System): The type system as defined in the CLI.
CLS (Common Language Specification): A set of rules intended to promote language interoperability.
CIL (Common Intermediate Language): The CLI instruction set (aka MSIL).
VES (Virtual Execution System): An environment for executing managed code (CIL).

CLI = VES + CTS + CLS. And that doesn't include Visual Studio at all...

OK, enough semantics... For the sake of this thread, I'll say ".NET" is a C# code made with Visual Studio .NET running in the CLR.

There is no implicit data store for .NET. Data is optimistically get/set from any store using ADO.NET, usually in a state known as the DataSet, which is completely disconnected. It's roughly equivalent to opening VFP and doing n SQL-Selects against DBFs into free (unfiltered) cursors in a new data environment. The data has no idea where it came from, there are no relations, there is no ordering. Like cursors in a data environment, DataTables in a DataSet can have all of those things added, but it's up to the developer (or Visual Studio Wizard) to add them. So pessimistic record locking really can't be "naturally" done, because the "natural" state of .NET is to work disconnected from a data source. You could continue to use the VFP data store with .NET and users would not know if it was a DBC or MSSQL table or whatever, because .NET makes an abstraction away from the data.

The VS.NET IDE is nice, but there's no command window - everything must be compiled from source into IL (Intermediate Language) before it will run - so testing certain things like you would in VFP can't happen.

Sample subclassed textbox in C#:
  public class StevesTextBox : TextBox
  {
     public string someStringYouLike = "hello";
  }
Instancing a new StevesTextBox gives an object that behaves like the base class, mine also has a string property of "hello". That's about it.



>I have been tasked to develop a white paper on VS.Net (C# in particular) and am allowed to use VFP as a comparison. I need links and comments from those of you here who are active in .Net development.
>
>For example:
>
>In VFP most of us have developed a set of class libraries based on VFP's native class definitions. I'm sure that in .Net one would do the same but how does one go about it.
>
>We know that VFP supports record locking for pessimistic development. How do other databases do this. I would suggest a table that would store the first user into a record that can indicate to a 2nd user accessing that same record that it is locked. If I remember correctly, databases like SQL-Server or Oracle do not perform individual record locking.
>
>How good is the .Net IDE? Any real obstacles when doing development, especially for forms, compared to VFP?
>
>Anyway, you begin to get the idea. It is not a full comparison of the languages but I do need to find out about the good, the bad and the ugly about .Net. I've always managed work-arounds to problems in VFP so I need to know if .Net is just as good.
>
>Thanks,
>Steve
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform