473,386 Members | 1,973 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,386 software developers and data experts.

LINQ and Entity Framework - Worth a stab?

I'm about to begin a brand new, big, ASP.NET project (using 3.5 .net fw), VS
2008. I'm using MySQL as the backend (customer request.) I have absolutely
no experience with LINQ and/or the Entity Framework. Though I am quite
comfortable with ADO.NET and VB.NET.

In your opinion, should I take a few days and learn it and utilize these
technologies in this new project (I'm starting from scratch)? Are the
benefits worth it in your opinion? Is there a steep learning curve in your
opinion? Or should I stick with what I know for this project?

I value Your opinion, so please let me know...
Sep 7 '08 #1
9 2235
"Cirene" <ci****@nowhere.comwrote in message
news:eF*************@TK2MSFTNGP05.phx.gbl...
In your opinion, should I take a few days and learn it and utilize these
technologies in this new project (I'm starting from scratch)? Are the
benefits worth it in your opinion? Is there a steep learning curve in
your opinion? Or should I stick with what I know for this project?
IMO, one of the worst things that a developer can do is to take a new piece
of technology and then go looking for a problem for it to solve...

I would suggest that you take a few days and learn LINQ, but utilise it ONLY
IF IT IS APPROPRIATE for the project. It might be, it might not be...
--
Mark Rae
ASP.NET MVP
http://www.markrae.net

Sep 7 '08 #2
"Mark Rae [MVP]" <ma**@markNOSPAMrae.netwrote in message
news:e6**************@TK2MSFTNGP04.phx.gbl...
"Cirene" <ci****@nowhere.comwrote in message
news:eF*************@TK2MSFTNGP05.phx.gbl...
>In your opinion, should I take a few days and learn it and utilize these
technologies in this new project (I'm starting from scratch)? Are the
benefits worth it in your opinion? Is there a steep learning curve in
your opinion? Or should I stick with what I know for this project?

IMO, one of the worst things that a developer can do is to take a new
piece of technology and then go looking for a problem for it to solve...

I would suggest that you take a few days and learn LINQ, but utilise it
ONLY IF IT IS APPROPRIATE for the project. It might be, it might not be...
Thanks for your input. I was thinking that "biting the bullet" and learning
it will (1) keep me on the cutting edge technically and (2) take advantage
of the new benefits. Thanks again...
Sep 7 '08 #3
"Cirene" <ci****@nowhere.comwrote in message
news:%2****************@TK2MSFTNGP02.phx.gbl...
>I would suggest that you take a few days and learn LINQ, but utilise it
ONLY IF IT IS APPROPRIATE for the project. It might be, it might not
be...

Thanks for your input. I was thinking that "biting the bullet" and
learning it will (1) keep me on the cutting edge technically and (2) take
advantage of the new benefits. Thanks again...
Learning LINQ (just like learning any new technology) will indeed keep you
up to date, but it's really important not to let technology drive the
solution... Just because a piece of technology is new and exciting doesn't
mean that it's always the appropriate thing to use in every situation...
--
Mark Rae
ASP.NET MVP
http://www.markrae.net

Sep 7 '08 #4
What kind of projects is linq good for then? and What kind of projects is it
not good for... can you give some examples of each?
"Mark Rae [MVP]" <ma**@markNOSPAMrae.netwrote in message
news:Os*************@TK2MSFTNGP05.phx.gbl...
"Cirene" <ci****@nowhere.comwrote in message
news:%2****************@TK2MSFTNGP02.phx.gbl...
>>I would suggest that you take a few days and learn LINQ, but utilise it
ONLY IF IT IS APPROPRIATE for the project. It might be, it might not
be...

Thanks for your input. I was thinking that "biting the bullet" and
learning it will (1) keep me on the cutting edge technically and (2) take
advantage of the new benefits. Thanks again...

Learning LINQ (just like learning any new technology) will indeed keep you
up to date, but it's really important not to let technology drive the
solution... Just because a piece of technology is new and exciting doesn't
mean that it's always the appropriate thing to use in every situation...
--
Mark Rae
ASP.NET MVP
http://www.markrae.net

Sep 8 '08 #5
"Andy B" <a_*****@sbcglobal.netwrote in message
news:%2****************@TK2MSFTNGP06.phx.gbl...

[please don't top-post]
>>Thanks for your input. I was thinking that "biting the bullet" and
learning it will (1) keep me on the cutting edge technically and (2)
take advantage of the new benefits. Thanks again...

Learning LINQ (just like learning any new technology) will indeed keep
you up to date, but it's really important not to let technology drive the
solution... Just because a piece of technology is new and exciting
doesn't mean that it's always the appropriate thing to use in every
situation...

What kind of projects is LINQ good for then? and What kind of projects is
it not good for... can you give some examples of each?
LINQ is a set of extensions to the .NET Framework which encompass
language-integrated query, set, and transform operations. It extends .NET
languages with native language syntax for queries and provides class
libraries to take advantage of these capabilities.

Put simplistically, LINQ allows .NET collection objects to be queried with
syntax which resembles T-SQL. If your project has a requirement to query
collection objects, and you would like to do that with syntax which
resembles T-SQL, the LINQ will be be perfect for your project. If your
project has no need to do this, then LINQ will be of no use to you.

Take AJAX as an example. AJAX is great for allowing parts of web pages to be
updated from the server without needing to refresh the entire page -
callbacks instead of postbacks. However, if you have no need to refresh
parts of web pages without needing to refresh the entire page, and you're
perfectly happy with good ol' postbacks, then AJAX is of no use to you. So
don't use it - you don't have to if you don't want to or need to...

Similarly, the ASP.NET ValidationControls. What are they good for? They are
good for projects which need validation. Projects which don't need
validation have no use for the ValidationControls. Alternatively, some
developers (like me) have evaluated the ValidationControls and find them to
be too restrictive so we don't use them.
--
Mark Rae
ASP.NET MVP
http://www.markrae.net

Sep 8 '08 #6

"Mark Rae [MVP]" <ma**@markNOSPAMrae.netwrote in message
news:us**************@TK2MSFTNGP02.phx.gbl...
"Andy B" <a_*****@sbcglobal.netwrote in message
news:%2****************@TK2MSFTNGP06.phx.gbl...

[please don't top-post]
>>>Thanks for your input. I was thinking that "biting the bullet" and
learning it will (1) keep me on the cutting edge technically and (2)
take advantage of the new benefits. Thanks again...

Learning LINQ (just like learning any new technology) will indeed keep
you up to date, but it's really important not to let technology drive
the solution... Just because a piece of technology is new and exciting
doesn't mean that it's always the appropriate thing to use in every
situation...

What kind of projects is LINQ good for then? and What kind of projects is
it not good for... can you give some examples of each?

LINQ is a set of extensions to the .NET Framework which encompass
language-integrated query, set, and transform operations. It extends .NET
languages with native language syntax for queries and provides class
libraries to take advantage of these capabilities.

Put simplistically, LINQ allows .NET collection objects to be queried with
syntax which resembles T-SQL. If your project has a requirement to query
collection objects, and you would like to do that with syntax which
resembles T-SQL, the LINQ will be be perfect for your project. If your
project has no need to do this, then LINQ will be of no use to you.

Take AJAX as an example. AJAX is great for allowing parts of web pages to
be updated from the server without needing to refresh the entire page -
callbacks instead of postbacks. However, if you have no need to refresh
parts of web pages without needing to refresh the entire page, and you're
perfectly happy with good ol' postbacks, then AJAX is of no use to you. So
don't use it - you don't have to if you don't want to or need to...

Similarly, the ASP.NET ValidationControls. What are they good for? They
are good for projects which need validation. Projects which don't need
validation have no use for the ValidationControls. Alternatively, some
developers (like me) have evaluated the ValidationControls and find them
to be too restrictive so we don't use them.
--
Mark Rae
ASP.NET MVP
http://www.markrae.net
Ok, I use sql server databases all the time. It's is the entire backbone of
the web applications I am working on now. What would you feel about using
linq to sql in this case?

Sep 8 '08 #7
it depends on requirements. linq has two modes:

one where its a query of collections (its as efficient as any code you
write). you should learn linq to replace your for loops as the code will
run faster (especially if you use foreach).

the other is where it generates an expression tree (at compile time),
that is converted to code at runtime. this is how linq to sql works. the
expression tree is converted to dynamic sql and executed. its great for
data binding but less useful if you use stored procedures for all you
sql access.

the entity framework can be used with or without linq. if you business
objects are really just based on tables and not a logical view, then
entity framework is great. it will build a class for each table and
supports relationships to other tables. its considerable better than
typed datasets.

-- bruce (sqlwork.com)
Andy B wrote:
"Mark Rae [MVP]" <ma**@markNOSPAMrae.netwrote in message
news:us**************@TK2MSFTNGP02.phx.gbl...
>"Andy B" <a_*****@sbcglobal.netwrote in message
news:%2****************@TK2MSFTNGP06.phx.gbl...

[please don't top-post]
>>>>Thanks for your input. I was thinking that "biting the bullet" and
learning it will (1) keep me on the cutting edge technically and (2)
take advantage of the new benefits. Thanks again...
Learning LINQ (just like learning any new technology) will indeed keep
you up to date, but it's really important not to let technology drive
the solution... Just because a piece of technology is new and exciting
doesn't mean that it's always the appropriate thing to use in every
situation...
What kind of projects is LINQ good for then? and What kind of projects is
it not good for... can you give some examples of each?
LINQ is a set of extensions to the .NET Framework which encompass
language-integrated query, set, and transform operations. It extends .NET
languages with native language syntax for queries and provides class
libraries to take advantage of these capabilities.

Put simplistically, LINQ allows .NET collection objects to be queried with
syntax which resembles T-SQL. If your project has a requirement to query
collection objects, and you would like to do that with syntax which
resembles T-SQL, the LINQ will be be perfect for your project. If your
project has no need to do this, then LINQ will be of no use to you.

Take AJAX as an example. AJAX is great for allowing parts of web pages to
be updated from the server without needing to refresh the entire page -
callbacks instead of postbacks. However, if you have no need to refresh
parts of web pages without needing to refresh the entire page, and you're
perfectly happy with good ol' postbacks, then AJAX is of no use to you. So
don't use it - you don't have to if you don't want to or need to...

Similarly, the ASP.NET ValidationControls. What are they good for? They
are good for projects which need validation. Projects which don't need
validation have no use for the ValidationControls. Alternatively, some
developers (like me) have evaluated the ValidationControls and find them
to be too restrictive so we don't use them.
--
Mark Rae
ASP.NET MVP
http://www.markrae.net

Ok, I use sql server databases all the time. It's is the entire backbone of
the web applications I am working on now. What would you feel about using
linq to sql in this case?
Sep 8 '08 #8
"Andy B" <a_*****@sbcglobal.netwrote in message
news:%2****************@TK2MSFTNGP04.phx.gbl...
Ok, I use SQL Server databases all the time. It's is the entire backbone
of the web applications I am working on now. What would you feel about
using LINQ to SQL in this case?

I don't really have anything to add to what Bruce has said, specifically
that LINQ to SQL will be really useful in some cases and not for others.

It is your role, as the developer, to decide which functionality to use in
any given situation...
--
Mark Rae
ASP.NET MVP
http://www.markrae.net

Sep 8 '08 #9
ANy time you throw a non-Microsoft technology into the mix, you increase
your programming time. As such, it is better to stick with technologies that
have been out awhile, where you can find pages to help you through the
configuration and coding.

I also agree with Mark that running around with a hammer, looking for nails,
is not a good way to solve a problem.

--
Gregory A. Beamer
MVP, MCP: +I, SE, SD, DBA

Subscribe to my blog
http://feeds.feedburner.com/GregoryBeamer#

or just read it:
http://feeds.feedburner.com/GregoryBeamer

********************************************
| Think outside the box! |
********************************************
"Cirene" <ci****@nowhere.comwrote in message
news:eF*************@TK2MSFTNGP05.phx.gbl...
I'm about to begin a brand new, big, ASP.NET project (using 3.5 .net fw),
VS 2008. I'm using MySQL as the backend (customer request.) I have
absolutely no experience with LINQ and/or the Entity Framework. Though I
am quite comfortable with ADO.NET and VB.NET.

In your opinion, should I take a few days and learn it and utilize these
technologies in this new project (I'm starting from scratch)? Are the
benefits worth it in your opinion? Is there a steep learning curve in
your opinion? Or should I stick with what I know for this project?

I value Your opinion, so please let me know...
Sep 8 '08 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
by: TOMERDR | last post by:
Hi, I have Visual studio.NET 2005 on XP proffessional Is it possible to me to use LINQ and ADO.NET Entity Framework? Can LINQ and ADO.NET Entity Framework be used with express editions as...
28
by: Marc Gravell | last post by:
In Linq, you can apparently get a meaningful body from and expression's .ToString(); random question - does anybody know if linq also includes a parser? It just seemed it might be a handy way to...
2
by: AAAAA | last post by:
Hi guys I have a one question, is Linq to Sql good in pefornace? is better that traditional method? ismore than speed?? or is same? Thanks.. Regards Cesar
10
by: Nils Magnus | last post by:
Hello, I've just started using SQL to LINQ to access my SQL Server tables, and it's a wonderful tool. Are there any equally elegant ways to store and access historic values for the objects? For...
5
by: ck1 | last post by:
Hi at all - I want to know if there are diffirence with Liqn to SQL and Linq To entity performance. I have read many article on the web that say that Linq To Entity is more fast than Linq To...
14
by: thj | last post by:
Hi, I was wondering what you guys are using and why? LINQ to SQL or NHibernate? Thanks in advance, Tommy
2
by: =?Utf-8?B?UGFvbG8=?= | last post by:
Learning C# and SQL Server. Just wondered what are the pros and cons of either approach to using SQL Server databases. (It may be 'how long is a piece of string'!) Thanks
1
by: Andy B | last post by:
I have to learn how to do one or the other: linq to sql or ado.net entity framework. There will be overhead no matter what way I go since I don't know either one. Which one would be the best one to...
5
by: Andy B | last post by:
I have been told that I should start using linq. I am used to datasets and how they work. Should I really change since I don't know anything about linq?
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.