Database Information

  • Thread starter Thread starter glenn
  • Start date Start date
G

glenn

I am new to .NET and C# and am coming from 10 years of programming in Delphi
writing some pretty extensive database applications ranging from business
systems to engineering test management systems. The database classes and
access levels used in Delphi are far different from what I see is VS/C# and
from what I'm seeing far better. But before making that determination I'm
wondering if anyone could point me to a book or resource that actually
covers laying out a large database project using C#.

Some of my worries are as follows:

1) How to layout classes to control information such as customer, invoice,
inventory that somehow can hook into and be used within the database
elements.

2) How to perform things such as drop down lists that mght have millions of
records in the list? Delphi handles this by allowing the component to go
out and retrieve records as the user is scrolling down through the drop down
list. To the user it appears all 1 million records are in the list, but in
reality its only pulling over 10 or 20 records at a time.

3) The best way to keep form elements updated with the database. Delphi
does this by attaching fields directly to a dataset. When a record is
scrolled in the dataset, all field elements are scrolled automatically. It
appears in VS I have to write code to update each individual field element
when something like this occurs.

There are many other concerns but these 3 are my main 3 at the moment. I
don't want to give VS an unfair shake and would like to read up on how to
perform these tasks before I determine which is actually he best direction
to go.

Thanks,

glenn
 
Hello,
1) How to layout classes to control information such as customer, invoice,
inventory that somehow can hook into and be used within the database
elements.

If you mean object-relational mapping, there are libraries for .NET which
allow you to do the same - I think there are even free ones.
2) How to perform things such as drop down lists that mght have millions
of
records in the list? Delphi handles this by allowing the component to go
out and retrieve records as the user is scrolling down through the drop
down
list. To the user it appears all 1 million records are in the list, but
in
reality its only pulling over 10 or 20 records at a time.

That's called 'virtual mode' and it seems that the standard ComboBox control
doesn't support it.
You might have better luck with 3rd party control suites, or probably by
creating a derived control.
3) The best way to keep form elements updated with the database. Delphi
does this by attaching fields directly to a dataset. When a record is
scrolled in the dataset, all field elements are scrolled automatically.
It
appears in VS I have to write code to update each individual field element
when something like this occurs.

Windows Forms databinding does the same thing for you.
You can review MSDN docs on the BindingManagerBase and CurrencyManager
classes.
I agree that there's nothing like Delphi's navigator control though (don't
remember the exact name, looks somewhat like a VCR control panel), but I
think it's fairly easy to create your own by manipulating the corresponding
CurrencyManager instance.
 
Thanks for the info, I'll keep digging for info I guess.... At least it
sounds like it can be done...

glenn


Dmytro Lapshyn said:
Hello,
1) How to layout classes to control information such as customer, invoice,
inventory that somehow can hook into and be used within the database
elements.

If you mean object-relational mapping, there are libraries for .NET which
allow you to do the same - I think there are even free ones.
2) How to perform things such as drop down lists that mght have millions
of
records in the list? Delphi handles this by allowing the component to go
out and retrieve records as the user is scrolling down through the drop
down
list. To the user it appears all 1 million records are in the list, but
in
reality its only pulling over 10 or 20 records at a time.

That's called 'virtual mode' and it seems that the standard ComboBox control
doesn't support it.
You might have better luck with 3rd party control suites, or probably by
creating a derived control.
3) The best way to keep form elements updated with the database. Delphi
does this by attaching fields directly to a dataset. When a record is
scrolled in the dataset, all field elements are scrolled automatically.
It
appears in VS I have to write code to update each individual field element
when something like this occurs.

Windows Forms databinding does the same thing for you.
You can review MSDN docs on the BindingManagerBase and CurrencyManager
classes.
I agree that there's nothing like Delphi's navigator control though (don't
remember the exact name, looks somewhat like a VCR control panel), but I
think it's fairly easy to create your own by manipulating the corresponding
CurrencyManager instance.

--
Sincerely,
Dmytro Lapshyn [Visual Developer - Visual C# MVP]


glenn said:
I am new to .NET and C# and am coming from 10 years of programming in
Delphi
writing some pretty extensive database applications ranging from business
systems to engineering test management systems. The database classes and
access levels used in Delphi are far different from what I see is VS/C#
and
from what I'm seeing far better. But before making that determination I'm
wondering if anyone could point me to a book or resource that actually
covers laying out a large database project using C#.

Some of my worries are as follows:

1) How to layout classes to control information such as customer, invoice,
inventory that somehow can hook into and be used within the database
elements.

2) How to perform things such as drop down lists that mght have millions
of
records in the list? Delphi handles this by allowing the component to go
out and retrieve records as the user is scrolling down through the drop
down
list. To the user it appears all 1 million records are in the list, but
in
reality its only pulling over 10 or 20 records at a time.

3) The best way to keep form elements updated with the database. Delphi
does this by attaching fields directly to a dataset. When a record is
scrolled in the dataset, all field elements are scrolled automatically.
It
appears in VS I have to write code to update each individual field element
when something like this occurs.

There are many other concerns but these 3 are my main 3 at the moment. I
don't want to give VS an unfair shake and would like to read up on how to
perform these tasks before I determine which is actually he best direction
to go.

Thanks,

glenn
 
Back
Top