471,326 Members | 2,111 Online
Bytes | Software Development & Data Engineering Community
Post +

Home Posts Topics Members FAQ

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

Special LINQ group available?

Hi group,

is there a special C# LINQ group available?

Regards
Jun 27 '08 #1
5 1187
There are a few managed forums for LINQ, but various people here can
probably assist too...

The LINQ Projecft General managed forum is here (at least until the big
move):
http://forums.microsoft.com/MSDN/Sho...D=123&SiteID=1

Marc
Jun 27 '08 #2
Intersting... I didn't know that @@DATEFIRST didn't work on SQL CE,
but then - I didn't know that LINQ-to-SQL *did* work on SQL CE ;-p

You could perhaps try just selecting the date (o.Date) from the
database (perhaps calling ToList() or ToArray() to buffer it locally),
then do a second projection afterwards?

var tmp = context.Absences.OrderBy(o =o.Date).Select(o =new {
o.Department, o.Name, o.Date, o.Reason }).ToArray();

var absenses = tmp.Select(o =new {
o.Department, o.Name, o.Date.Month, o.Date.DayOfWeek,
o.Reason });

That might fix it?

Marc
Jun 27 '08 #3
Oh, that's a great idea, and indeed - it works :)
I already managed to do the .DayOfWeek things in the iteration loop, but
your solution is much smarter than this.

Great.

Yes, Linq-to-SQL does work on SQL CE perfectly. But it doesn't work
automatically. You have to manually "SQL-metalize" the database, whenever
you change the table layout. There is a couple of blogs out, describing this
issue. The tool "sqlmetal.exe", required for this, is available in the SDK.
(Program Files\Microsoft SDKs\Windows\v6.0A\bin)

In my case I always run

SqlMetal.exe Database.sdf /dbml:KS.dbml /namespace:KS /pluralize

This produces KS.dbml, which I import into my project every time it is
changed (delete/add). The KS.designer.cs then contains all the classes
required for nice and smart "CRUDs". Because the structure of my db doesn't
change that frequently I can live with this small manual interaction.
I never worked with a SQL database easier.

Regards and thanks again for your assistance
Neil.
"Marc Gravell" <ma**********@gmail.comschrieb im Newsbeitrag
news:7d**********************************@l42g2000 hsc.googlegroups.com...
Intersting... I didn't know that @@DATEFIRST didn't work on SQL CE,
but then - I didn't know that LINQ-to-SQL *did* work on SQL CE ;-p

You could perhaps try just selecting the date (o.Date) from the
database (perhaps calling ToList() or ToArray() to buffer it locally),
then do a second projection afterwards?

var tmp = context.Absences.OrderBy(o =o.Date).Select(o =new {
o.Department, o.Name, o.Date, o.Reason }).ToArray();

var absenses = tmp.Select(o =new {
o.Department, o.Name, o.Date.Month, o.Date.DayOfWeek,
o.Reason });

That might fix it?

Marc

Jun 27 '08 #4
Re sqlmetal - I've found that most incrememtal changes are easier
simply by editing the dbml directly. Fortunately LINQ-to-SQL has
simple markup - I wouldn't try this with Entity Framework - but then
EF includes better tooling for database changes (which still doesn't
help very much if the designer doesn't like your database...).

One other trick I've used (in similar scenarios to the SQL CE) is to
setup the database on something that the designer DOES like [SQL
Express being the obvious choice], then just supply a different
connection string at runtime. That way you get the richer designer
experience, while still running against your chosen platform
(fortuantely the decisions about SQL dialects is made at runtime, not
compile/design time).

Marc
Jun 27 '08 #5
Oh, sorry. Seems you know more about that than me :)

From your statement
>but then - I didn't know that LINQ-to-SQL *did* work on SQL CE ;-p
I didn't expect, that you would have _any_ experiences with SQL CE.

Kind reagards
"Marc Gravell" <ma**********@gmail.comschrieb im Newsbeitrag
news:05**********************************@c65g2000 hsa.googlegroups.com...
Re sqlmetal - I've found that most incrememtal changes are easier
simply by editing the dbml directly. Fortunately LINQ-to-SQL has
simple markup - I wouldn't try this with Entity Framework - but then
EF includes better tooling for database changes (which still doesn't
help very much if the designer doesn't like your database...).

One other trick I've used (in similar scenarios to the SQL CE) is to
setup the database on something that the designer DOES like [SQL
Express being the obvious choice], then just supply a different
connection string at runtime. That way you get the richer designer
experience, while still running against your chosen platform
(fortuantely the decisions about SQL dialects is made at runtime, not
compile/design time).

Marc

Jun 27 '08 #6

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

7 posts views Thread by Chris | last post: by
28 posts views Thread by Marc Gravell | last post: by
3 posts views Thread by clintonG | last post: by
4 posts views Thread by shapper | last post: by
8 posts views Thread by Alcides | last post: by
9 posts views Thread by =?Utf-8?B?cmF1bGF2aQ==?= | last post: by
14 posts views Thread by thj | last post: by
2 posts views Thread by shapper | last post: by
reply views Thread by rosydwin | last post: by

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.